How do I install Oracle JDK 6? [duplicate]

Most of the software is not thoroughly tested with Java 7 and I would like to install Oracle's JDK 6.0 on Ubuntu 11.10.

Could someone please provide me the instructions for the same?


Solution 1:

Due to license issues Ubuntu will no longer distribute Oracle's JDK and JRE. Also previous versions supplied on PPAs suffer from security issues are are not recommended to be installed on any Ubuntu system.

There are no more supported java releases from Ubuntu - Ubuntu officially supports OpenJDK and OpenJRE implementation of Java which is the base for Oracle's own implementation.

To install the OpenJDK & OpenJRE refer to this Q&A.

The instructions below provide a guide to install the official Oracle JDK 6. You will need to regularly update this manually to ensure your installation maintains recommended security and stability fixes.

Install the Oracle JDK 6

Oracle JDK 6 is no longer maintained. It is not updated with the latest security patches and are not recommended for use in production.
You can however still download them from the Oracle Java Archive

Oracle themselves have the official guide to install their JDK - below is based upon those instructions.

  • Download the 32bit or 64bit Linux "compressed binary file" - it has a ".bin" file extension

  • Give it permissions to execute and extract it

    chmod a+x [version]-linux-i586.bin

    ./[version]-linux-i586.bin

During installation it will ask you to register - press ENTER. Firefox will open with the registration page. Registration is optional.

JDK 6 package is extracted into ./jdk1.6.0_x directory, for example ./jdk1.6.0_30.

Lets rename it:

mv jdk1.6.0_30 java-6-oracle
  • Now move the JDK 6 directory to /usr/lib

sudo mkdir /usr/lib/jvm

sudo mv java-6-oracle /usr/lib/jvm

switch to Oracle JDK 6

webupd8.googlecode.com hosts a nice-easy script to help with this.

wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/webupd8/update-java-0.5b
chmod +x update-java-0.5b
sudo ./update-java-0.5b

don't worry - 0.5b refers to the script version - not the version of java!

An alternative to this is to use the webupd8 ppa and the update-java package.

enter image description here

Finally test the switch has been successful:

java -version
javac -version

These should display the oracle version installed - 1.6.0_30

Install the Firefox/Chrome plugin

In a terminal:

mkdir ~/.mozilla/plugins

Remove the IcedTea plugin, if it has been installed.

sudo apt-get remove icedtea6-plugin

Remove a former version of the Java plugin (may or may not be present)

rm ~/.mozilla/plugins/libnpjp2.so

Now you can install the plugin, by creating a symbolic link (you tell Firefox, where the plugin is located).

(32bit)

ln -s /usr/lib/jvm/java-6-oracle/jre/lib/i386/libnpjp2.so ~/.mozilla/plugins/

(64bit)

ln -s /usr/lib/jvm/java-6-oracle/jre/lib/amd64/libnpjp2.so ~/.mozilla/plugins/

Confirm that the JRE has been successful by using the official oracle website.


Linked Questions:

  1. How do I install Java?
  2. How do I install Oracle Java JDK 7?
  3. How can I install Sun/Oracle's proprietary Java JDK 6/7/8 or JRE?

Solution 2:

The reason why Oracle's Java implementation is not supported or distributed by Ubuntu already discussed here.

The basic idea is that Oracle's Java Se will not be included in any official Ubuntu repo due to license problems created by Oracle.

That does not stop you from installing Oracle's JDK from a PPA or from the official package files from the Oracle's site.

This guide describes how-to download, install and make java, javac and javaws from Oracle available to use in your system.

How to install Oracle Java JDK6u30 on Ubuntu 11.10

(should work with any other version downloaded from Oracle)

  • Download Sun/Oracle Java JDK

Download Sun/Oracle Java JDK or JRE from here (current version is JDK 6 Update 30) http://www.oracle.com/technetwork/java/javase/downloads/index.html.

Note: Select any of the Linux x86 or Linux x64 bin packages (example jdk-6u30-linux-i586.bin, jdk-6u30-linux-x64.bin) depending on your system and preference.

  • Make the file executable

chmod +x /path/to/file/jdk-6u30-linux-*.bin

  • Run Sun/Oracle Java JDK binary and delete it

/path/to/binary/jdk-6u30-linux-*.bin && rm /path/to/binary/jdk-6u30-linux-*.bin

There will be a newly created folder on the same path with the extracted files

  • Move the folder to a system wide path and give it a more identifiable name
mkdir -p /usr/lib/jvm
cd /path/to/binary/
mv /path/to/binary/jdk1.6.0_30 /path/to/binary/java-6-oracle && mv /path/to/binary/java-6-oracle /usr/lib/jvm/


  • Add the new version of java, javac and javaws as an system alternative and give it priority 1
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/java-6-oracle/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/java-6-oracle/bin/javac" 1
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/java-6-oracle/bin/javaws" 1
  • Select the new alternatives to be used
sudo update-alternatives --config java

Select your created java alternative

sudo update-alternatives --config javac

Select your newly created javac alternative

sudo update-alternatives --config javaws

Select your new created javaws alternative

  • Test your newly added java and javac

java -version should return

java version "1.6.0_30"
Java(TM) SE Runtime Environment (build 1.6.0_30-b12)
Java HotSpot(TM) Client VM (build 20.5-b03, mixed mode, sharing)

and javac -version should return

javac 1.6.0_30
  • Update system paths

Open /etc/profile with you favorite text editor, ie

gksudo gedit /etc/profile

Navigate to the end of the file and add these contents

JAVA_HOME=/usr/lib/jvm/java-6-oracle
JAVA_BIN=$JAVA_HOME/bin
PATH=$PATH:$JAVA_HOME:$JAVA_BIN
export JAVA_HOME
export JAVA_BIN
export PATH

Reload your system wide PATH /etc/profile with

. /etc/profile

That is for Oracle's JDK, java, javac and javaws should be running from the Oracle's package.

The version here installed can be updated easily by copying the new version over the currently installed files. Just extract the package and copy over the new one over the one that is currently installed.

You might want to check /etc/alternatives for links to older installs of JRE - there are many tools that might not be found on your system after a manual install like this.

Solution 3:

Open the terminal and execute below commands one by one. It will install JDk as well as JRE. No need to configure anything. It will take care of everything.

sudo add-apt-repository ppa:webupd8team/java

sudo apt-get update

JDK 6 along with JRE

sudo apt-get install oracle-java6-installer

OR FOR JDK 7

sudo apt-get install oracle-java7-installer

Once executed you can check, whether the Java and JDK is installed by java -version and then javac -version

Solution 4:

Since Oracle Java has been removed from the repository, you will have to add a new repository like mentioned in this article. The repository described there has also packages for Oneiric.

Note: It's important to trust the repository/ppa you're installing from.

  • Are PPA's safe to add to my system and what are some "red flags" to watch out for?

This could do anything.

So, if you trust the repository and developer below;

Open up a terminal window under Application -> Accessories -> Terminal, adding the ppa > by:

sudo add-apt-repository ppa:ferramroberto/java
sudo apt-get update

Then, install java jre:

sudo apt-get install sun-java6-jre sun-java6-jre-plugin

Install Jdk by the command:

sudo apt-get install sun-java6-jdk