Java SE support
Open Liberty requires a Java SE runtime. It can run by using either a Java Runtime Environment (JRE) or a Java SE Development Kit (JDK) distribution.
Open Liberty runs on any of the Java SE versions that are listed in the Java SE version column of the Supported Java Releases table. Always run Open Liberty on the most recent service release of your chosen Java version. A new version of Java SE is released every six months. Unless the prior version is designated as a Long Term Support (LTS) release, it no longer receives service updates for function and security after the new version is released. Whenever a non-LTS release is replaced by the next version, the Open Liberty project no longer validates the runtime against the older version.
Choosing a JVM
Regardless of which Java SE Version you use, two Java virtual machine (JVM) implementations are available: Eclipse OpenJ9 and HotSpot, each of which is packaged in different Java distributions. These JVMs provide similar throughput performance, but make different tradeoffs for memory footprint and startup. As a result, Open Liberty recommends using a Java distribution that packages Eclipse OpenJ9 because it has a faster start time and uses less memory. The main Java distribution that uses Eclipse OpenJ9 is IBM Semeru. IBM Semeru provides uncertified Open Edition releases under a GPLv2 license with classpath exception, and Certified Edition releases under an IBM license.
Supported Java SE releases
The following table lists the Java SE versions that Open Liberty supports and provides links for downloads and migration guides.
Java SE version | LTS Release | End of Open Liberty support | Eclipse OpenJ9 Download | HotSpot Download | Migration Advice |
---|---|---|---|---|---|
8 | Yes | 26.0.0.10 | |||
11 | Yes | 26.0.0.10 | |||
17 | Yes | 27.0.0.10 | |||
21 | Yes | 29.0.0.10 | |||
22 | No | Because Java 22 is not an LTS release, Open Liberty supports it only until Java 23 is released. | IBM Semeru 22 (coming soon) |
Migration tools
In addition to the Java migration guides, tools are available that can provide migration advice that is targeted to your applications. The Migration Toolkit for Application Binaries can scan a JAR, WAR or EAR file and provide advice on migrating to new Java SE versions. After you download and install the tool, you can run it with the following command:
java -jar binaryAppScanner.jar myapp.war --analyze --sourceJava=ibm8 --targetJava=java11
Plug-ins that run a similar analysis on your application are available from Eclipse in the Eclipse marketplace.