Install Oracle Java JDK 1.8 On CentOS 6.5

by
Share this Article: Facebook269Google+0Twitter13LinkedIn0Reddit0StumbleUpon1

By default, all Linux distributions comes with openjdk preinstalled. If you want to install and use Oracle Java JDK/JRE on your system, Just follow the steps below. In this tutorial, let us see how to install and configure latest Oracle Java JDK on CentOS 6.5 server, although It should work on other RPM based distributions such as RHEL 6.x, Scientific Linux 6.x and Fedora etc.

First of all, update your server.

yum install update

Then, search for if any older JDK versions are installed in your system.

rpm -qa | grep -E '^open[jre|jdk]|j[re|dk]'

Sample output:

java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.i686
eject-2.1.5-17.el6.i686
perl-Object-Accessor-0.34-136.el6.i686
java-1.7.0-openjdk-1.7.0.45-2.4.3.4.el6_5.i686
openjpeg-libs-1.3-10.el6_5.i686

Check for already installed Java:

java -version

Sample output:

java version "1.7.0_45"
OpenJDK Runtime Environment (rhel-2.4.3.4.el6_5-i386 u45-b15)
OpenJDK Client VM (build 24.45-b08, mixed mode, sharing)

As you see in the above output, Java 1.6 and java 1.7 have been installed on my server. So, I removed both of them using the following commands:

yum remove java-1.6.0-openjdk
yum remove java-1.7.0-openjdk

Download And Install Oracle Java JDK

At the time of writing this tutorial, the latest Java JDK version is JDK 8u5. First, let us download the latest Java version.

Go to the Oracle Java download page and download the required version depending upon your distribution architecture.

As I use 32bit CentOS server, I have downloaded the 32bit rpm package.

Then, go the directory where you’ve downloaded the jdk package and run the following command to install it.

rpm -ivh jdk-8u5-linux-i586.rpm

Sample output:

Preparing...                ########################################### [100%]
1:jdk                    ########################################### [100%]
Unpacking JAR files...
rt.jar...
jsse.jar...
charsets.jar...
tools.jar...
localedata.jar...
jfxrt.jar...
plugin.jar...
javaws.jar...
deploy.jar...

Check Java version

Now, check for the installed JDK version in your system using command:

java -version

Sample output:

java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) Client VM (build 25.5-b02, mixed mode, sharing)

As you see above, latest java 1.8 has been installed.

Setup Global Environment Variables

We can easily set the environment variables using the export command as shown below.

export JAVA_HOME=/usr/java/jdk1.8.0_05
export PATH=$PATH:$JAVA_HOME

Now, let us check for the environment variables using commands:

echo $JAVA_HOME

Sample output:

/usr/java/jdk1.8.0_05

Or

echo $PATH

Sample output:

/usr/lib/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/java/jdk1.8.0_05

However, the above method is not recommended. The path will be disappeared when the system reboots. To make it permanent, you have to add the path’s in the system wide profile.

To do that, create a file called java.sh under /etc/profile.d/ directory.

vi /etc/profile.d/java.sh

Add the following lines:

#!/bin/bash
JAVA_HOME=/usr/java/jdk1.8.0_05
PATH=$JAVA_HOME/bin:$PATH
export PATH JAVA_HOME
export CLASSPATH=.

Save and close the file. Make it executable using command:

chmod +x /etc/profile.d/java.sh

Then, set the environment variables permanently by running the following command:

source /etc/profile.d/java.sh

That’s it.

What if I didn’t remove the old JDK versions from my system?

As I mentioned before, make sure you have removed all old JDK versions from your system. If you didn’t remove the older versions from your server before installing latest JDK version, you should tell your system, from where java should be executed.

By default, the JDK 1.8.x will be installed in /usr/java/jdk1.8.0_05/ location. In order to tell our system, from where java should be executed, we need to run the following commands one by one.

alternatives --install /usr/bin/java java /usr/java/jdk1.8.0_05/jre/bin/java 20000
alternatives --install /usr/bin/jar jar /usr/java/jdk1.8.0_05/bin/jar 20000
alternatives --install /usr/bin/javac javac /usr/java/jdk1.8.0_05/bin/javac 20000
alternatives --install /usr/bin/javaws javaws /usr/java/jdk1.8.0_05/jre/bin/javaws 20000
alternatives --set java /usr/java/jdk1.8.0_05/jre/bin/java
alternatives --set jar /usr/java/jdk1.8.0_05/bin/jar
alternatives --set javac /usr/java/jdk1.8.0_05/bin/javac 
alternatives --set javaws /usr/java/jdk1.8.0_05/jre/bin/javaws

All done. Let us check the alternatives.

ls -lA /etc/alternatives/

Sample output:

lrwxrwxrwx. 1 root root 29 May  9 16:40 jar -> /usr/java/jdk1.8.0_05/bin/jar
lrwxrwxrwx. 1 root root 34 May  9 16:39 java -> /usr/java/jdk1.8.0_05/jre/bin/java
lrwxrwxrwx. 1 root root 31 May  9 16:41 javac -> /usr/java/jdk1.8.0_05/bin/javac
lrwxrwxrwx. 1 root root 36 May  9 16:41 javaws -> /usr/java/jdk1.8.0_05/jre/bin/javaws

That’s it. Now check for the java version using command:

java -version

Sample output:

java version "1.8.0_05"
Java(TM) SE Runtime Environment (build 1.8.0_05-b13)
Java HotSpot(TM) Client VM (build 25.5-b02, mixed mode, sharing)

Cheers!

For questions please refer to our Q/A forum at : http://ask.unixmen.com/

Share this Article: Facebook269Google+0Twitter13LinkedIn0Reddit0StumbleUpon1