java

JDK 21.0.2 Release Notes

Java™ SE Development Kit 22.0.1 (JDK 22.0.1)

Release date: April 16, 2024

The full version string for this update release is 22.0.1+8 (where "+" means "build"). The version number is 22.0.1.

 

IANA TZ Data 2024a

JDK 22.0.1 contains IANA time zone data 2024a which contains the following changes:

  • Ittoqqortoormiit, Greenland changes time zones on 2024-03-31.
  • Vostok, Antarctica changed time zones on 2023-12-18.
  • Casey, Antarctica changed time zones five times since 2020.
  • Code and data fixes for Palestine timestamps starting in 2072.
  • A new data file zonenow.tab for timestamps starting now.
  • Kazakhstan unifies on UTC+5 beginning 2024-03-01.
  • Palestine springs forward a week later after Ramadan.
  • zic no longer pretends to support indefinite-past DST.
  • localtime no longer mishandles Ciudad Juárez in 2422.

For more information, refer to Timezone Data Versions in the JRE Software.

 

Security Baselines

The security baselines for the Java Runtime at the time of the release of JDK 22.0.1 are specified in the following table:

Java Family Version Security Baseline (Full Version String)
2222.0.1+8
2121.0.3+7
1717.0.11+7
1111.0.23+7
88u411-b09

 

Keeping the JDK up to Date

Oracle recommends that the JDK is updated with each Critical Patch Update. In order to determine if a release is the latest, the Security Baseline page can be used to determine which is the latest version for each release family.

Critical patch updates, which contain security vulnerability fixes, are announced one year in advance on Critical Patch Updates, Security Alerts and Bulletins. It is not recommended that this JDK (version 22.0.1) be used after the next critical patch update scheduled for July 16, 2024.

Java Management Service, available to all users, can help you find vulnerable Java versions in your systems. Java SE Subscribers and customers running in Oracle Cloud can use Java Management Service to update Java Runtimes and to do further security reviews like identifying potentially vulnerable third party libraries used by your Java programs. Existing Java Management Service user click here to log in to your dashboard. The Java Management Service Documentation provides a list of features available to everyone and those available only to customers. Learn more about using Java Management Service to monitor and secure your Java Installations.

 

Known Issues

tools/jpackage
 jpackage Apps May Fail to Build on Debian Linux Distros Due to Missing Shared Libraries (JDK-8295111)

There is an issue on Debian Linux distros where jpackage could not always build an accurate list of required packages from shared libraries with symbolic links in their paths, causing installations to fail due to missing shared libraries.

 

Other Notes

security-libs/java.security
 Added Certainly R1 and E1 Root Certificates (JDK-8321408)

The following root certificates have been added to the cacerts truststore:

+ Certainly

  + certainlyrootr1
    DN: CN=Certainly Root R1, O=Certainly, C=US
+ Certainly
  + certainlyroote1
    DN: CN=Certainly Root E1, O=Certainly, C=US

hotspot/runtime
 Make TrimNativeHeapInterval a Product Switch (JDK-8325496)

TrimNativeHeapInterval has been made an official product switch. It allows the JVM to trim the native heap at periodic intervals.

This option is only available on Linux with glibc.

 

Updates to Third Party Libraries

Library New Version Module JBS
LCMS 2.16 java.desktop JDK-8321489

 

Bug Fixes

This release also contains fixes for security vulnerabilities described in the Oracle Critical Patch Update.

Issues fixed in 22.0.1:
# JBS Component/Subcomponent Summary
1JDK-8325590core-libs/java.langRegression in round-tripping UTF-16 strings after JDK-8311906
2JDK-8323065hotspot/compilerUnneccesary CodeBlob lookup in CompiledIC::internal_set_ic_destination
3JDK-8317299hotspot/compilersafepoint scalarization doesn't keep track of the depth of the JVM state
4JDK-8325672hotspot/compilerC2: allocate PhaseIdealLoop::_loop_or_ctrl from C->comp_arena()
5JDK-8326638hotspot/compilerCrash in PhaseIdealLoop::remix_address_expressions due to unexpected Region instead of Loop
6JDK-8324050hotspot/compilerIssue store-store barrier after re-materializing objects during deoptimization
7JDK-8322783hotspot/runtimeprioritize /etc/os-release over /etc/SuSE-release in hs_err/info output
8JDK-8323657tools/javacCompilation of snippet results in VerifyError at runtime with --release 9 (and above)
9JDK-8314275tools/javacIncorrect stepping in switch
10JDK-8322159tools/javacThisEscapeAnalyzer crashes for erroneous code
11JDK-8325203tools/jpackageSystem.exit(0) kills the launched 3rd party application