• Home
  • Ubuntu 18.04
    • Whats New?
    • Upgrade Ubuntu
    • Install Java
    • Install Node.js
    • Install Docker
    • Install Git
    • Install LAMP Stack
  • Tutorials
    • AWS
    • Shell Scripting
    • Docker
    • Git
    • MongoDB
  • Funny Tools
  • FeedBack
  • Submit Article
  • About Us
TecAdmin
Menu
  • Home
  • Ubuntu 18.04
    • Whats New?
    • Upgrade Ubuntu
    • Install Java
    • Install Node.js
    • Install Docker
    • Install Git
    • Install LAMP Stack
  • Tutorials
    • AWS
    • Shell Scripting
    • Docker
    • Git
    • MongoDB
  • Funny Tools
  • FeedBack
  • Submit Article
  • About Us

How to Install JAVA 8 on CentOS/RHEL 7/6 and Fedora 28-23

Written by Rahul, Updated on May 2, 2019
JAVA java, java 8, Java_home, jdk, jdk-jre, jre, jre_home, openjdk, oracle java, sun java

This tutorial helps you to install Java 8 or update Java on your system. Read the instruction carefully before downloading Java from the Linux command line.

The Oracle Java 11 is the latest LTS version available to download and install. To install Oracle Java 11 on CentOS and Fedora system follow below tutorial.

IMPORTANT: Java 8 is no longer available to download publically. You can use below link to install Java 11.

  • How to Install Java 11 on CentOS & Fedora

Step 1 – Download Latest Java Archive

The Oracle team provides Java RPM packages as well as compiled source code. Many times I have tried Java installation using rpm packages but I faced some issues. So I decided to install Java using the compiled source code. Since then I have installed a large number of times Java on CentOS, Redhat based systems without any issues. To download the latest Java SE Development Kit 8 release from its official download page or use following commands to download from the shell.

cd /opt/
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "https://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz"
tar xzf jdk-8u201-linux-x64.tar.gz

Step 2 – Install Java 8 with Alternatives

The alternatives command is used for maintained symbolic links. This command used to creates, removes, maintains and displays information about the symbolic links comprising the alternatives system. Let’s use the alternatives command to configure Java on your system. The alternatives command is available in chkconfig package.

cd jdk1.8.0_201/
alternatives --install /usr/bin/java java /opt/jdk1.8.0_201/bin/java 2
alternatives --config java

The newly installed Java version listed at number 4, So input 4 and press enter.

Select java version
There are 3 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
   1           /opt/jdk1.8.0_45/bin/java
*  2           /opt/jdk1.8.0_144/bin/java
 + 3           /opt/jdk-11/bin/java
  4           /opt/jdk1.8.0_201/bin/java

Enter to keep the current selection[+], or type selection number: 4

At this point, JAVA 8 has been successfully installed on your system. We also recommend to setup javac and jar commands path using alternatives

alternatives --install /usr/bin/jar jar /opt/jdk1.8.0_201/bin/jar 2
alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_201/bin/javac 2
alternatives --set jar /opt/jdk1.8.0_201/bin/jar
alternatives --set javac /opt/jdk1.8.0_201/bin/javac

Step 3 – Check Installed Java Version

Java and javac binaries are available under PATH environment variable. You can use them from anywhere in your system. Let’s check the installed version of Java runtime environment (JRE) on your system by executing the following command.

java -version

java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)

Step 4 – Setup Java Environment Variables

Most of Java based application’s uses environment variables to work. Set the Java environment variables using following commands

Set the JAVA_HOME, JRE_HOME and PATH environment variables.

export JAVA_HOME=/opt/jdk1.8.0_201
export JRE_HOME=/opt/jdk1.8.0_201/jre
export PATH=$PATH:/opt/jdk1.8.0_201/bin:/opt/jdk1.8.0_201/jre/bin

Also add the above commands to /etc/bashrc or /etc/environment file to auto set environment variables during the system reboot.

Share it!
Share on Facebook
Share on Twitter
Share on Reddit
Share on Tumblr
Rahul
Rahul
Connect on Facebook Connect on Twitter

I, Rahul Kumar am the founder and chief editor of TecAdmin.net. I am a Red Hat Certified Engineer (RHCE) and working as an IT professional since 2009..

Related Posts

  • How to Install Java 11/8 on Fedora 31/30/29

    October 6, 2019
  • How to Install Java 11/8 on Amazon Linux

    October 5, 2019
  • How to Install Java on CentOS 8

    September 18, 2019
  • How to Get Current Date and Time in Java

    April 7, 2019
  • How To Install Java on Debian 10 (Buster)

    March 20, 2019

139 Comments

  1. Avatar G0LDEN_key Reply to G0LDEN_key
    June 26, 2019 at 10:13 am

    $ wget ‘https://download.oracle.com/otn/java/jdk/8u211-b12/478a62b7d4e34b78b671c754eaaf38ab/jdk-8u211-linux-x64.rpm?AuthParam=1561543343_db87fc4729c3230513c85594dd6ffddd’
    $ mv jdk-8u211-linux-x64.rpm\?AuthParam\=1561543343_db87fc4729c3230513c85594dd6ffddd jdk-8u211-linux-x64.rpm
    $ sudo rpm -i jdk-8u211-linux-x64.rpm
    warning: jdk-8u211-linux-x64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
    Unpacking JAR files…
    tools.jar…
    plugin.jar…
    javaws.jar…
    deploy.jar…
    rt.jar…
    jsse.jar…
    charsets.jar…
    localedata.jar…
    $ java -version
    java version “1.8.0_211”
    Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
    Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)
    $

  2. Avatar Rahul Reply to Rahul
    May 24, 2019 at 6:41 am

    URL is throwing Error 403:

    wget –no-cookies –no-check-certificate –header “Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie” “https://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz”

    –2019-05-23 23:40:44– https://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz
    Resolving download.oracle.com… 23.35.182.109
    Connecting to download.oracle.com|23.35.182.109|:443… connected.
    HTTP request sent, awaiting response… 302 Moved Temporarily
    Location: https://edelivery.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz [following]
    –2019-05-23 23:40:45– https://edelivery.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz
    Resolving edelivery.oracle.com… 23.79.166.37, 2600:1406:1400:69d::366, 2600:1406:1400:690::366
    Connecting to edelivery.oracle.com|23.79.166.37|:443… connected.
    HTTP request sent, awaiting response… 403 Forbidden
    2019-05-23 23:40:45 ERROR 403: Forbidden.

  3. Avatar roland Reply to roland
    April 28, 2019 at 1:29 pm

    Hi,
    Thank you for the detailed instructions. It’s straight forward to perform the manual steps to set a specific java version. I’m trying to perform the same steps in a shell script on CentOS 7. I’. using “expect” to set the specific Java version but no luck. Have you been successful in setting the Java version with “expect” to set the value when executing:
    alternatives –config java
    This command opens an interactive subshell that requires the user to select a numerical value for the Java version.

    function configure_java() {
    yum -y install expect
    EXPECT=$(which expect)
    JAVA_HOME=”
    update-alternatives –install /usr/bin/java java ${JAVA_HOME%*/}/bin/java 2000
    ${EXPECT} <<EOD
    spawn update-alternatives –config java
    expect "Enter to keep the current selection[\+], or type selection number:"
    send 2
    EOD
    }

    However, when listing the JAVA_HOME version it has not been set. When I do it manually JAVA_HOME has the correct java version listed
    echo $JAVA_HOME

    Any thoughts?

    Cheers,
    Roland

  4. Avatar Zsolt Reply to Zsolt
    April 20, 2019 at 9:12 pm

    Since 8u211/212 you need to login to your Oracle account to download JDK, so this method isn’t working anymore.
    A new cookie called “OAMAuthnCookie_edelivery.oracle.com:443” is needed for downloading JDK, but the value of this cookie is generated by Oracle when you login.

    • Avatar paul Reply to paul
      May 2, 2019 at 11:24 am

      Yes confirmed, this does not work any longer. Can we update this guide please? Thanks in advance Rahul!

  5. Avatar Ezequiel Reply to Ezequiel
    April 10, 2019 at 11:20 am

    Thanks too much.

  6. Avatar Jaideep Reply to Jaideep
    March 17, 2019 at 1:43 pm

    Thanks buddy.
    Helped alot.

  7. Avatar Shubham Singh Reply to Shubham
    February 13, 2019 at 10:21 am

    Thank you so much. This is a link that I was recommended. Very kind of you to save us trouble, all those you faced. May all your experience bring you a good fortune.

    Thank you once again.

  8. Avatar Abdo Reply to Abdo
    December 30, 2018 at 6:53 am

    Big thanks

  9. Avatar IvanG Reply to IvanG
    December 10, 2018 at 1:17 pm

    Hello. Does anyone known where is hash in download link comes from?
    For example 750e1c8617c5452694857ad95c3ee230
    in https://download.oracle.com/otn-pub/java/jdk/8u192-b12/750e1c8617c5452694857ad95c3ee230/jdk-8u192-linux-x64.tar.gz

« Previous 1 … 8 9 10

Leave a Reply

Cancel reply

Popular Posts

  • How to Install Python 3.8 on Ubuntu, Debian and LinuxMint
  • How to Restart Network Service on CentOS 8 or RHEL 8
  • How to Check IP Address on CentOS 8
  • How to Install Java 11/8 on Amazon Linux
  • How to Configure Static IP on CentOS 8 (CLI)
Copyright © 2013-2019 TecAdmin.net. All Rights Reserved. This site uses cookies. By using this website you agree with our term and services
We use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it.OkNo
Revoke cookies