How to Install Java 17 on RHEL-based Linux Distributions

Java is a secure, stable, and well-known, general-purpose programming language and computing technology platform with many interconnected capabilities.

To run Java-based applications, you must have Java installed on your server. You mostly need the Java Runtime Environment (JRE), a collection of software components used to run Java applications on the Linux machine.

If you want to develop software applications for Java, you need to install the Oracle Java Development Kit (JDK), which comes with a complete JRE package with tools for developing, debugging, and monitoring Java applications and it is an Oracle’s supported Java SE (Standard Edition) version.

Note: If you are looking for an open-source and free JDK version, install the OpenJDK which provides the same features and performance as Oracle JDK under the GPL license.

In this article, we will show you how to install OpenJDK 16 from the EPEL repository and Oracle OpenJDK 17 (the latest release) using binary packages in RHEL-based Linux distributions such as CentOS, Fedora, Rocky Linux, and AlmaLinux to develop and run Java applications.

Install OpenJDK 16 in CentOS/RHEL and Fedora

At the time of writing this article, OpenJDK 16 is the currently available version to be installed using the following commands from the EPEL repository.

# yum install java-latest-openjdk
# java -version
Sample Output
openjdk version "16.0.1" 2021-04-20
OpenJDK Runtime Environment 21.3 (build 16.0.1+9)
OpenJDK 64-Bit Server VM 21.3 (build 16.0.1+9, mixed mode, sharing)

Install Oracle OpenJDK 17 in CentOS/RHEL and Fedora

To install Oracle OpenJDK 17, you need to download the production-ready OpenJDK 17 from the Java SE Downloads page or run the following wget command to download and install it as shown.

# wget --no-check-certificate -c --header "Cookie: oraclelicense=accept-securebackup-cookie" https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.rpm

Install the package using the following command:

# yum localinstall jdk-17_linux-x64_bin.rpm

Next, confirm the installed Java version.

# java -version
java version "17.0.1" 2021-10-19 LTS
Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.1+12-LTS-39, mixed mode, sharing)

Set Default Java Version

If you have more than one Java version installed on the system, you need to set the default version using the alternatives command as shown.

# alternatives --config java
Sample Output
There are 2 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
*+ 1           /usr/java/jdk-17.0.1/bin/java
   2           java-latest-openjdk.x86_64 (/usr/lib/jvm/java-16-openjdk-16.0.1.0.9-3.rolling.el8.x86_64/bin/java)

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

Just, enter the number to set the default Java version on the system.

Finally, check the Java version.

# java -version
Sample Output
openjdk version "16.0.1" 2021-04-20
OpenJDK Runtime Environment 21.3 (build 16.0.1+9)
OpenJDK 64-Bit Server VM 21.3 (build 16.0.1+9, mixed mode, sharing)

Congratulations! You’ve successfully installed the latest version of Oracle OpenJDK in RHEL, CentOS, Fedora, and Rocky Linux/AlmaLinux to develop and run Java applications.

Ravi Saive
I am an experienced GNU/Linux expert and a full-stack software developer with over a decade in the field of Linux and Open Source technologies

Each tutorial at TecMint is created by a team of experienced Linux system administrators so that it meets our high-quality standards.

Join the TecMint Weekly Newsletter (More Than 156,129 Linux Enthusiasts Have Subscribed)
Was this article helpful? Please add a comment or buy me a coffee to show your appreciation.

Leave a Reply to Lorenzo M Cancel reply

Thank you for taking the time to share your thoughts with us. We appreciate your decision to leave a comment and value your contribution to the discussion. It's important to note that we moderate all comments in accordance with our comment policy to ensure a respectful and constructive conversation.

Rest assured that your email address will remain private and will not be published or shared with anyone. We prioritize the privacy and security of our users.