Update the Liberty Java runtime environment or software development kit

Overview

Options for installing the JRE or Java SDK:

IBM i

Liberty on the IBM i platform uses the system-wide version of Java. To install Java on IBM i, follow these guidelines:

See Install Java on your IBM i server.

Important: Removal notices were issued for Java SE 8 and 11, which means that support for these Java versions is removed as of the fix pack specified in Removal notices. After support is removed, the Liberty kernel is recompiled and can no longer run with the removed Java version.

z/OS:

Liberty on z/OS supports Java SE 8. As of version 22.0.0.9, Liberty on z/OS supports Java SE 11. As of version 23.0.0.12, Liberty on z/OS supports Java SE 17. As of version 24.0.0.9, Liberty on z/OS supports Java SE 21. When support ends for your Java SE version, we must upgrade to a supported version.

  • The Liberty end of support date for Java SE 8 is October 2026, fix pack 26.0.0.10.
  • The Liberty end of support date for Java SE 11 is October 2027, 27.0.0.10.
  • The Liberty end of support date for Java SE 17 is October 2027, 27.0.0.10.

See Removal notices. After support is removed, the Liberty kernel is recompiled and can no longer run with the removed Java version.

Update pr cedure

See also: Official documentation

  1. Update our Liberty installation to at least the minimum fix pack that supports the Java version. The more recent the fix pack, the more features and fixes are included.

    Important:

    • Java SE 24 requires Liberty fix pack 25.0.0.4 or later.
    • Java SE 21 requires Liberty fix pack 23.0.0.10 or later.
    • Java SE 11 requires Liberty fix pack 19.0.0.1 or later.
    • Java SE 17 requires Liberty fix pack 21.0.0.10 or later.
    • Java SE 8 requires fix pack 8.5.5.5 or later.

    Important:

    • The z/OS platform supports Java SE 8.
    • The z/OS platform supports Java SE 11.
    • The z/OS platform supports Java SE 17.
    • The z/OS platform supports Java SE 21.
    • Java SE 24 is not supported on z/OS.

    IBM i platform supports only Java SE 8, Java SE 11, and Java SE 17. Java SE 21 and Java SE 24 are not supported on IBM i.

    • Java SE 11 requires Liberty fix pack 21.0.0.11 or later.
    • Java SE 17 requires Liberty fix pack 23.0.0.3 or later.

    Thanks to Liberty zero-migration architecture, we can update your installation with minimal impact to the current applications and configuration. For more information, see Zero-migration architecture on the Open Liberty website.

    The method we use to update Liberty depends on how it was initially installed. If we installed from an archive file, such as a ZIP or JAR file, see:

  2. Update the JRE or Java SDK using one of the following options.

    • If we installed Liberty from the .zip file with IBM Java SDK 8, we also received the latest Java updates. If we previously installed Liberty from this file and want to independently update the Java SDK, download a newer version from IBM Java SDKs for WebSphere Liberty.

    • If we installed Liberty using Installation Manager, we can also use it to install and update IBM Java SDKs. If we use IBM Java, install one of the common IBM Java SDKs, such as IBM SDK, Java Technology Edition, Version 8. The IBM SDKs receive security updates faster than the older WebSphere Java SDKs because they are not on the WebSphere fix pack schedule. The IBM Java 8 SDK is also used by WebSphere Application Server traditional V9.0.

      For more information about installing IBM Java SDKs using Installation Manager, see Install, update, and uninstall IBM SDK, Java Technology Edition.

      For more information about installing IBM Java SDKs using Installation Manager, see Install IBM SDK, Java Technology Edition on z/OS.

    • Install a separately downloaded JRE or Java SDK. We can install any specification-compliant JRE or Java SDK of a supported Java version.After we install the JRE or Java SDK, change the Java level that Liberty uses by setting the JAVA_HOME variable.Tip: We can specify the Java SDK or JRE location on the JAVA_HOME property in the server.env file, as described in Liberty environment variables. When you set the JAVA_HOME property in the server.env file, Liberty uses the same Java runtime location regardless of the user profile that the Liberty server runs under. Alternatively, we can set the JAVA_HOME variable on the operating system:

      Windows: Go to System > Advanced system settings. In the Advanced tab of the System Properties window, click Environment Variables. Add or edit the JAVA_HOME system variable so that it points to the jre directory of the Java installation, such as C:\Program Files\IBM\Java80\jre.

      UNIX: If you are running bash shell, you can add theJAVA_HOME environment variable to the .bashrc file in the user's home directory.

  3. Check for any deprecations or incompatibilities by scanning the applications with the Migration Toolkit.

    In most cases, Java SE specifications are upwards binary-compatible with previous Java SE versions except for the incompatibilities and deprecations that are documented in the Oracle Compatibility Guide for JDK 8 and Java SE 7 and JDK 7 Compatibility.

    Important: Java SE 11 introduced significant breaking changes, primarily the removal of Java EE and CORBA APIs. The Migration Toolkit consists of two separate tools, the Migration Toolkit for Application Binaries and the Eclipse-based WebSphere Application Server Migration Toolkit.

    • The application binary scanner provides a detailed migration analysis report for the application, so we can better understand the type and scope of changes that the application might require.

    • When you migrate the applications, the Eclipse-based Migration Toolkit provides quick fixes to automatically update your source when possible and provides detailed help for items that must be manually updated.