- Chapter 2. Installing OpenJDK 8 on Red Hat Enterprise Linux
- 2.1. Installing a JRE on RHEL by using yum
- 2.2. Installing a JRE on RHEL by using an archive
- 2.3. Installing OpenJDK on RHEL by using yum
- 2.4. Installing OpenJDK on RHEL by using an archive
- 2.5. Installing multiple major versions of OpenJDK on RHEL by using yum
- 2.6. Installing multiple major versions of OpenJDK on RHEL by using an archive
- 2.7. Installing multiple minor versions of OpenJDK on RHEL by using yum
- 2.8. Installing multiple minor versions of OpenJDK on RHEL by using an archive
Chapter 2. Installing OpenJDK 8 on Red Hat Enterprise Linux
OpenJDK is an environment for developing and running a wide range of platform-agnostic applications, from mobile applications to desktop and web applications and enterprise systems. Red Hat provides an open source implementation of the Java Platform SE (Standard Edition) called OpenJDK.
Applications are developed using the JDK (Java Development Kit). Applications are run on a JVM (Java Virtual Machine), which is included in the JRE (Java Runtime Environment) and the JDK. There is also a headless version of Java which has the smallest footprint and does not include the libraries needed for a user interface. The headless version is packaged in the headless subpackage.
If you are unsure whether you need the JRE or the JDK, it is recommended that you install the JDK.
The following sections provide instructions for installing OpenJDK on Red Hat Enterprise Linux.
You can install multiple major versions of OpenJDK on your local system. If you need to switch from one major version to another major version, issue the following command in your command-line interface (CLI) and then following the onscreen prompts:
$ sudo update-alternatives --config 'java'
2.1. Installing a JRE on RHEL by using yum
You can install OpenJDK Java Runtime Environment (JRE) using the system package manager, yum .
Prerequisites
- Logged in as a user with root privileges on the system.
- Registered your local system to your Red Hat Subscription Management account. See the Registering a system using Red Hat Subscription Management user guide.
- Run the yum command, specifying the package you want to install:
$ sudo yum install java-1.8.0-openjdk
$ java -version openjdk version "1.8.0_322" OpenJDK Runtime Environment (build 1.8.0_322-b06) OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode)
If the output from the previous command shows that you have a different major version of OpenJDK checked out on your system, you can enter the following command in your CLI to switch your system to use OpenJDK 8:
$ sudo update-alternatives --config 'java'
2.2. Installing a JRE on RHEL by using an archive
You can install OpenJDK Java Runtime Environment (JRE) by using an archive. This is useful if the Java administrator does not have root privileges.
To ease the upgrades for later versions create a parent directory to contain your JREs and create a symbolic link to the latest JRE using a generic path.
- Create a directory to where you want to download the archive file, and then navigate to that directory on your command-line interface (CLI). For example:
$ tar -xf java-1.8.0-openjdk-portable-1.8.0.322.b06-4.portable.jre.el7.x86_64.tar.xz -C ~/jres
$ ln -s ~/jres/java-1.8.0-openjdk-portable-1.8.0.322.b06-4.portable.jre.el7.x86_64 ~/jres/java-8
$ export JAVA_HOME=~/jres/java-8
$ printenv | grep JAVA_HOME JAVA_HOME=~/jres/java-8
$ export PATH="$JAVA_HOME/bin:$PATH"
$ java -version openjdk version "1.8.0_322" OpenJDK Runtime Environment (build 1.8.0_322-b06) OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode)
You can ensure that JAVA_HOME environment variable persists for the current user by exporting the environment variable in ~/.bashrc .
2.3. Installing OpenJDK on RHEL by using yum
You can install OpenJDK using the system package manager, yum .
Prerequisites
- Log in as a user with root privileges.
- Registered your local system to your Red Hat Subscription Management account. See the Registering a system using Red Hat Subscription Management user guide.
- Run the yum command, specifying the package you want to install:
$ sudo yum install java-1.8.0-openjdk-devel
$ javac -version javac 1.8.0_322
2.4. Installing OpenJDK on RHEL by using an archive
You can install OpenJDK with an archive. This is useful if the Java administrator does not have root privileges.
To ease upgrades, create a parent directory to contain your JREs and create a symbolic link to the latest JRE using a generic path.
- Create a directory to where you want to download the archive file, and then navigate to that directory on your command-line interface (CLI). For example:
$ tar -xf java-1.8.0-openjdk-portable-1.8.0.322.b06-4.portable.jdk.el7.x86_64.tar.xz -C ~/jdks
$ ln -s ~/jdks/java-1.8.0-openjdk-portable-1.8.0.322.b06-4.portable.jdk.el7.x86_64 ~/jdks/java-8
$ export JAVA_HOME=~/jdks/java-8
$ printenv | grep JAVA_HOME JAVA_HOME=~/jdks/java-8
$ export PATH="$JAVA_HOME/bin:$PATH"
$ java -version openjdk version "1.8.0_322" OpenJDK Runtime Environment (build 1.8.0_322-b06) OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode)
You can ensure that JAVA_HOME environment variable persists for the current user by exporting the environment variable in ~/.bashrc .
2.5. Installing multiple major versions of OpenJDK on RHEL by using yum
You can install multiple versions of OpenJDK using the system package manager, yum .
Prerequisites
- A Red Hat Subscription Management (RHSM) account with an active subscription that provides access to a repository that provides the OpenJDK you want to install.
- You must have root privileges on the system.
- Run the following yum commands to install the package: For OpenJDK 17
$ sudo yum install java-17-openjdk
$ sudo yum install java-11-openjdk
$ sudo yum install java-1.8.0-openjdk
$ sudo yum list installed "java*" Installed Packages java-1.8.0-openjdk.x86_64 1:1.8.0.322.b06-2.el8_5 @rhel-8-for-x86_64-appstream-rpms java-11-openjdk.x86_64 1:11.0.14.0.9-2.el8_5 @rhel-8-for-x86_64-appstream-rpms java-17-openjdk.x86_64 1:17.0.2.0.8-4.el8_5 @rhel-8-for-x86_64-appstream-rpms
$ java -version openjdk version "1.8.0_322" OpenJDK Runtime Environment (build 1.8.0_322-b06) OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode)
If the output from the previous command shows that you have a different major version of OpenJDK checked out on your system, you can enter the following command in your CLI to switch your system to use OpenJDK 8:
$ sudo update-alternatives --config 'java'
Additional resources
2.6. Installing multiple major versions of OpenJDK on RHEL by using an archive
You can install multiple major versions of OpenJDK by using the same procedures found in Installing a JRE on RHEL by using an archive or Installing OpenJDK on RHEL 8 by using an archive using multiple major versions .
For instructions how to configure the default OpenJDK version for the system, see Interactively selecting a system-wide OpenJDK version on RHEL.
Additional resources
2.7. Installing multiple minor versions of OpenJDK on RHEL by using yum
You can install multiple minor versions of OpenJDK on RHEL. This is done by preventing the installed minor versions from being updated.
Prerequisites
- Add the installonlypkgs option in the /etc/yum.conf directory to specify the OpenJDK packages that yum can install but not update.
installonlypkgs=java- --openjdk,java- --openjdk-headless,java- --openjdk-devel
$ rpm -qa | grep java-1.8.0-openjdk java-1.8.0-java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64 java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64
$ /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-2.el8_5.x86_64/bin/java -version openjdk version "1.8.0_322" OpenJDK Runtime Environment (build 1.8.0_322-b06) OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode) $ /usr/lib/jvm/java-1.8.0-java-1.8.0-openjdk-1.8.0.312.b07-2.el8_5.x86_64/bin/java -version openjdk version "1.8.0_312" OpenJDK Runtime Environment (build 1.8.0_312-b07) OpenJDK 64-Bit Server VM (build 25.312-b07, mixed mode)
2.8. Installing multiple minor versions of OpenJDK on RHEL by using an archive
Installing multiple minor versions is the same as Installing a JRE on RHEL by using an archive or Installing OpenJDK on RHEL 8 by using an archive using multiple minor versions.
For instructions how to choose a default minor version for the system, see Non-interactively selecting a system-wide OpenJDK version on RHEL.
Additional resources