3 Installation of the JDK on Linux Platforms
This topic describes the installation procedures of the JDK on the Linux platform, along with the system requirements.
General Notes About Installing the JDK on Linux Platforms from Archive Files
Installing the JDK automatically creates a directory called
jdk–feature.interim.update.patch
where
feature (17),interim,
update,
and patch
represent
corresponding values of version information.
Root Access
If you install JDK in a specific location such as /opt
,
you must log in with root credentials to gain the necessary
permissions. If you do not have the root access, either install the
JDK in your home directory or a sub directory for which you have the
write permissions.
Overwriting Files
If you install the software in a directory that contains a sub directory named
jdk–17.interim.update.patch
, the new software
overwrites files of the same name in that directory. Ensure that you
rename the old directory if it contains files that you would like to
keep.
System Preferences
Installing the JDK from archive files doesn't configure the backing store for the
system node of Java Preferences API
(java.util.prefs
Java package). If this
functionality of the JDK is required, you need to manually configure
it by making sure either /etc/.java/.systemPrefs
or
jdk–17.interim.update.patch/.systemPrefs
directory exists.
General Notes About Installing the JDK on Linux Platforms from RPM packages
This topic describes general information about installing JDK 17 from RPM packages on Linux platforms.
You can install only one version of JDK of the same feature
release. If you try to install the newer version of the same feature
release while the older version exists, the installer uninstalls the
older version and installs the new version. For example, you can't
install jdk-17
and
jdk-17.0.1
simultaneously. If you attempt to
install jdk-17.0.1
after jdk-17
is
installed, the installer uninstalls jdk-17
and installs
jdk-17.0.1
.
Every update release will be installed in a separate directory, such as /usr/lib/jvm/jdk-<VERSION>-oracle-<ARCH>
directory, where <VERSION> is a full version string (example: 23, 23.0.1), <ARCH>
equals x64
or aarch64
. Additionally /usr/java/jdk-17
symbolic link that is pointing to the installation directory is created for backward compatibility.
Note:
If you install an older version of a JDK when the newer version of the same feature family already exists, an error is displayed, prompting you to uninstall a newer JDK version if an older version has to be installed.Root Access
You must log in with root credentials to install or update JDK.
System Preferences
By default, the installation script configures the system such that the backing
store for the system node of Java Preferences API (java.util.prefs
Java package) is configured in
/etc/.java/.systemPrefs
directory.
System Integration
The JDK installation is integrated with the alternatives framework. After
installation, the alternatives framework is updated to reflect the
binaries from the recently installed JDK. Java commands such as
java
, javac
,
javadoc
, and javap
can be
called from the command line.
Using the java -version
command, you can confirm the
default (recently installed) JDK version.
java
files:$ rpm -q --whatprovides java
System Requirements for Installing JDK on Linux Platforms
See Oracle JDK Certified Systems Configurations for information about supported platforms, operating systems, and browsers.
JDK Installation Instruction Notation for Linux Platforms
JDK installers now support only one version of any Java feature release. You can't install multiple versions of the same feature release.
jdk-17
and
jdk-17.0.1
simultaneously. If you attempt to
install jdk-17.0.1
after jdk-17
is
installed, the installer uninstalls jdk-17
and installs
jdk-17.0.1
.
Note:
If you install an older version of a JDK when the newer version of the same feature family already exists, an error is displayed, prompting you to uninstall a newer JDK version if an older version has to be installed.Linux x64 systems:
jdk-<FEATURE>_linux-x64_bin.tar.gz
jdk-17_linux-x64_bin.tar.gz
Linux aarch64 (64-bit ARM) systems:
jdk-<FEATURE>_linux-aarch64_bin.tar.gz
jdk-17_linux-aarch64_bin.tar.gz
Installing the JDK on Linux from Archive Files, Debian Packages, RPM Packages, and Oracle Linux Repositories
You can install the JDK on a Linux platform from archive files, debian packages, downloadable Red Hat Package Manager (RPM) packages files, or RPM packages from Oracle Linux (OL) repositories.
Installation can be performed by using one of the following processes:
-
From archive files (
.tar.gz
): This allows you to install a private version of the JDK for the current user into any location, without affecting other JDK installations. However, it may involve manual steps to get some of the features to work. See the following table for the options available for downloading and installing the JDK from archive files. The bundles are available for Linux x64 and Linux aarch64 (64-bit ARM) systems. Install the required bundle. - From Debian packages (
.deb
): This allows you to perform a system-wide JDK installation on Debian-based Linux platforms, and requires root access. -
From downloadable RPM packages (
.rpm
): This allows you to perform a system-wide JDK installation on RPM-based Linux platforms for all users, and requires root access. See the following table for the options available for downloading and installing the JDK from Linux x64 and Linux aarch64 (64-bit ARM) RPM packages. -
From Oracle Linux repositories: This allows you to perform a system-wide JDK installation on OL platforms starting from OL7 for all users, and requires root access. JDK RPM packages in Oracle Linux RPM repositories are available for x64 and aarch64 (64-bit ARM) OL platforms. Explicit download of JDK RPM packages is not required, the package manager will do it automatically for you.
Table 3-1 Difference between Generic Linux and OL platforms
Feature | Downloadable JDK RPM Package for Generic Linux Platforms | JDK RPM package for Oracle Linux platforms |
---|---|---|
Supported Linux Platforms | Any RPM-based Linux platform. For example, Red Hat, SuSE | OL platforms starting from OL7 |
Package name | JDK image is packed in a single package named
jdk-17 |
JDK image is split into two packages:
|
Installation directory name | /usr/lib/jvm/jdk-17-oracle-<ARCH> |
/usr/lib/jvm/jdk-17-oracle-<ARCH> |
Available for download from Java SE Downloads | Yes | No. The packages are hosted in Oracle Linux RPM repositories. |
Integration with the alternatives framework | jdk-17
package registers java and
javac groups with the alternatives
framework.
|
|
Will automatically install the required 3rd party packages? | No. You need to manually install the required packages. | Yes. All required packages will be installed automatically. |
Downloading the JDK Installer
Access Java SE Downloads page and click Accept License Agreement. Under the Download menu, click the Download link corresponding your requirement.
The following table lists the options and instructions for downloading and installing the JDK 17 release on a Linux platform:
Download File | Instructions | Architecture (CPU Type) | Who Can Install |
---|---|---|---|
For Linux x64 systems: jdk-17.interim.update.patch_linux-x64.tar.gz |
Installing the 64-Bit JDK on Linux Platforms | Intel - 64-bit | Anyone |
For Linux aarch64 (64-bit ARM) systems:
jdk-17.interim.update.patch_linux-aarch64.tar.gz |
Installing the 64-Bit JDK on Linux Platforms | ARM - 64-bit | Anyone |
For Linux x64 systems: jdk-17.interim.update.patch_linux-x64.deb |
Installing the 64-Bit JDK Package on Debian-based Linux Platforms | Intel - 64-bit RPM-based Linux | Root |
For Linux x64 systems: jdk-17.interim.update.patch_linux-x64.rpm |
Installing the 64-Bit JDK on RPM-Based Linux Platforms | Intel - 64-bit RPM-based Linux | Root |
For Linux aarch64 (64-bit ARM) systems:
jdk-17.interim.update.patch_linux-aarch64.rpm |
Installing the 64-Bit JDK on RPM-Based Linux Platforms | ARM - 64-bit RPM-based Linux | Root |
Installing the 64-Bit JDK on Linux Platforms
You can install the JDK for 64-bit Linux from an archive file
(.tar.gz
). The .tar.gz
archive file (also called a
tarball) is a file that can be uncompressed and extracted in a single step.
Installing the 64-Bit JDK Package on Debian-based Linux Platforms
You can install the JDK Debian package for 64-bit Linux from the
(.deb
) file.
Installing the 64-Bit JDK on RPM-Based Linux Platforms
You can install the JDK on 64-bit RPM-based Linux platforms, such as Red Hat
and SuSE by using a downloadable RPM package file (.rpm
) in the
system location.
Note:
You can install the JDK using a downloadable RPM package file on an OL system too, but the preferred way to install the JDK on OL systems is from Oracle Linux RPM repositories.su
and entering the superuser password.
Installation of Public Key on RPM-based Linux Platforms
From JDK version 8, the JDK RPMs are signed with OL keys. RPMs installed on Linux distributions other than OL may display a warning message indicating that security validation of the package failed. This indicates that the public key used to sign this RPM needs to be installed in the system.
A sample warning message and the public key installation steps are as follows:
Sample Warning Message
jdk-17.0.11_linux-aarch64_bin.rpm: Header V3 RSA/SHA256 Signature, key
ID ec551f03: NOKEY
Installation Steps
Note:
Public key installation needs to be done only once. The key installation is persistent across reboots.