installing oracle java 7 jre/jdk on debian wheezy
Note: You can follow the same instructions for the Oracle Java 7 JRE. If you do, ignore the steps for javac.
Previously, I have relied on following instructions from Alexander Holbreich's blog on how to install the latest Oracle Java JDK on Debian Wheezy (amd64). There are a few steps that are a little outdated but overall, it works well. Since I find myself updating Java fairly often as newer versions are released, I figured that it would be worthwhile to write down the updated steps:
Download the latest Oracle JDK from here.
Accept the license agreement and then select the proper Linux x64 .tar.gz file.
Once downloaded, transfer the .tar.gz file to your box to install.
Note: There are other ways to directly download the latest JDK but this is probably the most straight forward.
Extract the latest JDK to /usr/lib/jvm/. Example:
tar zxvf jdk-7u25-linux-x64.tar.gz -C /usr/lib/jvm/
Check to see what update-alternatives priority the current 'java' is at:
root@athena:~# update-alternatives --display java java - auto mode link currently points to /usr/lib/jvm/jdk1.7.0_21/bin/java /usr/lib/jvm/java-6-openjdk-amd64/jre/bin/java - priority 1061 slave java.1.gz: /usr/lib/jvm/java-6-openjdk-amd64/jre/man/man1/java.1.gz /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java - priority 1051 slave java.1.gz: /usr/lib/jvm/java-7-openjdk-amd64/jre/man/man1/java.1.gz /usr/lib/jvm/jdk1.7.0_21/bin/java - <span style="color: #ff0000;">priority 1066</span> Current 'best' version is '/usr/lib/jvm/jdk1.7.0_21/bin/java'.
Look for the highest priority and in the next step, increment the priority by one so that it automatically gets selected by update-alternatives. In this case, we will use 1067.
Add the latest version of java, javac, javaws, & libnpjp2.so using update-alternatives:
update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0_25/bin/java 1067 update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_25/bin/javac 1067 update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jdk1.7.0_25/bin/javaws 1067 update-alternatives --install /usr/lib/mozilla/plugins/libnpjp2.so libnpjp2.so /usr/lib/jvm/jdk1.7.0_25/jre/lib/amd64/libnpjp2.so 1067
If you want to remove previous versions of the Oracle JDK, you can do so by simply removing the directory of the previous version of the JDK from /usr/lib/jvm/ and having update-alternatives do an auto selection. Example:
rm -rf /usr/lib/jvm/jdk1.7.0_21 update-alternatives --auto java update-alternatives --auto javac update-alternatives --auto javaws update-alternatives --auto libnpjp2.so
Now you should have the latest Oracle Java JDK:
root@athena:~# java -version java version "1.7.0_25" Java(TM) SE Runtime Environment (build 1.7.0_25-b15) Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)
You can verify the installation of the Iceweasel plugin by navigating to 'about:plugins'.
As always, feel free to leave a comment if you have any issues or find any problems with these instructions.
*Edit: I have updated the instructions to include the Java plugin for Iceweasel upon request.