RELEASE NOTES: JDK 24.0.2

Notes generated: Fri Aug 29 08:14:23 CEST 2025

JEPs

None.

RELEASE NOTES

tools/jpackage

Issue Description
JDK-8345185

jpackage No Longer Includes Service Bindings by Default for Generated Run-Time Images


Starting with JDK 25, jpackage no longer includes service bindings for a run-time image that it creates. Prior to JDK 25, jpackage would include service bindings for run-time images. As a result, the generated run-time images produced by jpackage might not include the same set of modules as it did in prior versions.

The previous behavior can be achieved by adding the --bind-services jlink option to the default jlink options jpackage uses:

` jpackage [...] --jlink-options \ "--strip-native-commands --strip-debug --no-man-pages --no-header-files --bind-services" `


hotspot/compiler

Issue Description
JDK-8349637

Incorrect result of Integer.numberOfLeadingZeros


Integer.numberOfLeadingZeros may return an incorrect result on x86_64 with AVX2. The issue is caused by an incorrect JIT compiler optimization. As a workaround, the following command-line options can be used -XX:+UnlockDiagnosticVMOptions -XX:DisableIntrinsic=_numberOfLeadingZeros_i.


security-libs/java.security

Issue Description
JDK-8359170

Added 4 New Root Certificates from Sectigo Limited


The following root certificates have been added to the cacerts truststore: ``` + Sectigo Limited + sectigocodesignroote46 DN: CN=Sectigo Public Code Signing Root E46, O=Sectigo Limited, C=GB

  • Sectigo Limited

  • sectigocodesignrootr46 DN: CN=Sectigo Public Code Signing Root R46, O=Sectigo Limited, C=GB

  • Sectigo Limited

  • sectigotlsroote46 DN: CN=Sectigo Public Server Authentication Root E46, O=Sectigo Limited, C=GB

  • Sectigo Limited

  • sectigotlsrootr46 DN: CN=Sectigo Public Server Authentication Root R46, O=Sectigo Limited, C=GB ```


JDK-8350498

Removed Two Camerfirma Root Certificates


The following root certificates, which are terminated and no longer in use, have been removed from the cacerts keystore: ``` + alias name "camerfirmachamberscommerceca [jdk]" Distinguished Name: CN=Chambers of Commerce Root, OU=http://www.chambersign.org, O=AC Camerfirma SA CIF A82743287, C=EU

  • alias name "camerfirmachambersignca [jdk]" Distinguished Name: CN=Global Chambersign Root - 2008, O=AC Camerfirma S.A., SERIALNUMBER=A82743287, L=Madrid (see current address at www.camerfirma.com/address), C=EU

```


JDK-8303770

Removed Baltimore CyberTrust Root Certificate After Expiry Date


The following expired root certificate has been removed from the cacerts keystore: ` + alias name "baltimorecybertrustca [jdk]" Distinguished Name: CN=Baltimore CyberTrust Root, OU=CyberTrust, O=Baltimore, C=IE `


FIXED ISSUES

client-libs

Priority Bug Summary
P4 JDK-8294155 Exception thrown before awaitAndCheck hangs PassFailJFrame
P4 JDK-8350260 Improve HTML instruction formatting in PassFailJFrame
P4 JDK-8340784 Remove PassFailJFrame constructor with screenshots

client-libs/2d

Priority Bug Summary
P3 JDK-8330936 [ubsan] exclude function BilinearInterp and ShapeSINextSpan in libawt java2d from ubsan checks
P3 JDK-8347377 Add validation checks for ICC_Profile header fields
P3 JDK-8343224 print/Dialog/PaperSizeError.java fails with MediaSizeName is not A4: A4
P3 JDK-8348596 Update FreeType to 2.13.3
P3 JDK-8348597 Update HarfBuzz to 10.4.0
P3 JDK-8348110 Update LCMS to 2.17
P4 JDK-8346837 jdk/javax/print/URLGIFPrinting.java test fails with java.lang.IllegalAccessException: class com.sun.javatest.regtest.agent.MainWrapper$MainTask

client-libs/java.awt

Priority Bug Summary
P3 JDK-8280991 [XWayland] No displayChanged event after setDisplayMode call
P3 JDK-8348675 TrayIcon tests fail in Ubuntu 24.10 Wayland
P3 JDK-8348598 Update Libpng to 1.6.47
P3 JDK-8348600 Update PipeWire to 1.3.81
P4 JDK-8349751 AIX build failure after upgrade pipewire to 1.3.81
P4 JDK-8334644 Automate javax/print/attribute/PageRangesException.java
P4 JDK-8349378 Build splashscreen lib with SIZE optimization
P4 JDK-8352109 java/awt/Desktop/MailTest.java fails in platforms where Action.MAIL is not supported
P4 JDK-8351277 Remove pipewire from AIX build
P4 JDK-8348299 Update List/ItemEventTest/ItemEventTest.java

client-libs/java.beans

Priority Bug Summary
P4 JDK-8344892 beans/finder/MethodFinder.findMethod incorrectly returns null

client-libs/javax.accessibility

Priority Bug Summary
P3 JDK-8345728 [Accessibility,macOS,Screen Magnifier]: JCheckbox unchecked state does not magnify but works for checked state
P3 JDK-8348936 [Accessibility,macOS,VoiceOver] VoiceOver doesn't announce untick on toggling the checkbox with "space" key on macOS
P3 JDK-8286204 [Accessibility,macOS,VoiceOver] VoiceOver reads the spinner value 10 as 1 when user iterates to 10 for the first time on macOS

client-libs/javax.sound

Priority Bug Summary
P4 JDK-8347576 Error output in libjsound has non matching format strings

client-libs/javax.swing

Priority Bug Summary
P2 JDK-8347427 JTabbedPane/8134116/Bug8134116.java has no license header
P4 JDK-8350924 javax/swing/JMenu/4213634/bug4213634.java fails
P4 JDK-8346581 JRadioButton/ButtonGroupFocusTest.java fails in CI on Linux
P5 JDK-8342524 Use latch in AbstractButton/bug6298940.java instead of delay

core-libs

Priority Bug Summary
P4 JDK-8347038 [JMH] jdk.incubator.vector.SpiltReplicate fails NoClassDefFoundError
P4 JDK-8350682 [JMH] vector.IndexInRangeBenchmark failed with IndexOutOfBoundsException for size=1024
P4 JDK-8345676 [ubsan] ProcessImpl_md.c:561:40: runtime error: applying zero offset to null pointer on macOS aarch64

core-libs/java.io

Priority Bug Summary
P3 JDK-8347740 java/io/File/createTempFile/SpecialTempFile.java failing
P4 JDK-8345368 java/io/File/createTempFile/SpecialTempFile.java fails on Windows Server 2025

core-libs/java.lang

Priority Bug Summary
P4 JDK-8346880 [aix] java/lang/ProcessHandle/InfoTest.java still fails: "reported cputime less than expected"
P4 JDK-8349358 [JMH] Cannot access class jdk.internal.vm.ContinuationScope
P4 JDK-8349787 java/lang/Thread/virtual/ThreadPollOnYield.java#default passes unexpectedly without libVThreadPinner.so
P4 JDK-8350786 Some java/lang jtreg tests miss requires vm.hasJFR

core-libs/java.net

Priority Bug Summary
P3 JDK-8346705 SNI not sent with Java 22+ using java.net.http.HttpClient.Builder#sslParameters
P4 JDK-8347000 Bug in com/sun/net/httpserver/bugs/B6361557.java test
P4 JDK-8347373 HTTP/2 flow control checks may count unprocessed data twice
P4 JDK-8352706 httpclient HeadTest does not run on HTTP2
P4 JDK-8347173 java/net/DatagramSocket/InterruptibleDatagramSocket.java fails with virtual thread factory
P4 JDK-8217914 java/net/httpclient/ConnectTimeoutHandshakeSync.java failed on connection refused while doing POST
P4 JDK-8330598 java/net/httpclient/Http1ChunkedTest.java fails with java.util.MissingFormatArgumentException: Format specifier '%s'
P4 JDK-8348102 java/net/httpclient/HttpClientSNITest.java fails intermittently
P4 JDK-8281511 java/net/ipv6tests/UdpTest.java fails with checkTime failed
P4 JDK-8347995 Race condition in jdk/java/net/httpclient/offline/FixedResponseHttpClient.java
P4 JDK-8350546 Several java/net/InetAddress tests fails UnknownHostException

core-libs/java.nio

Priority Bug Summary
P3 JDK-8346671 java/nio/file/Files/probeContentType/Basic.java fails on Windows 2025
P4 JDK-8347171 (dc) java/nio/channels/DatagramChannel/InterruptibleOrNot.java fails with virtual thread factory
P4 JDK-8353053 (fs) Add support for UserDefinedFileAttributeView on AIX
P4 JDK-8347286 (fs) Remove some extensions from java/nio/file/Files/probeContentType/Basic.java
P4 JDK-8346972 Test java/nio/channels/FileChannel/LoopingTruncate.java fails sometimes with IOException: There is not enough space on the disk

core-libs/java.time

Priority Bug Summary
P3 JDK-8352716 (tz) Update Timezone Data to 2025b

core-libs/java.util

Priority Bug Summary
P3 JDK-8351233 [ASAN] avx2-emu-funcs.hpp:151:20: error: ‘D.82188’ is used uninitialized

core-libs/java.util.concurrent

Priority Bug Summary
P4 JDK-8351933 Inaccurate masking of TC subfield decrement in ForkJoinPool

core-libs/java.util.jar

Priority Bug Summary
P3 JDK-8353787 Increased number of SHA-384-Digest java.util.jar.Attributes$Name instances leading to higher memory footprint

core-libs/java.util:i18n

Priority Bug Summary
P3 JDK-8356096 ISO 4217 Amendment 179 Update
P4 JDK-8349200 [JMH] time.format.ZonedDateTimeFormatterBenchmark fails

core-svc/java.lang.management

Priority Bug Summary
P4 JDK-8347267 [macOS]: UnixOperatingSystem.c:67:40: runtime error: division by zero

docs/guides

Priority Bug Summary
P4 JDK-8357147 Document -XX:G1UseConcRefinement and -XX:G1ConcRefinementThreads

globalization/translation

Priority Bug Summary
P4 JDK-8351223 Update localized resources in keytool and jarsigner

hotspot/compiler

Priority Bug Summary
P2 JDK-8349637 Integer.numberOfLeadingZeros outputs incorrectly in certain cases
P3 JDK-8353274 [PPC64] Bug related to -XX:+UseCompactObjectHeaders -XX:-UseSIGTRAP in JDK-8305895
P3 JDK-8347997 assert(false) failed: EA: missing memory path
P3 JDK-8348261 assert(n->is_Mem()) failed: memory node required
P3 JDK-8347018 C2: Insertion of Assertion Predicates ignores the effects of PhaseIdealLoop::clone_up_backedge_goo()
P3 JDK-8336042 Caller/callee param size mismatch in deoptimization causes crash
P3 JDK-8347718 Unexpected NullPointerException in C2 compiled code due to ReduceAllocationMerges
P4 JDK-8346264 "Total compile time" counter should include time spent in failing/bailout compiles
P4 JDK-8342775 [Graal] java/util/concurrent/locks/Lock/OOMEInAQS.java fails OOME thrown from the UncaughtExceptionHandler
P4 JDK-8346888 [ubsan] block.cpp:1617:30: runtime error: 9.97582e+36 is outside the range of representable values of type 'int'
P4 JDK-8350483 AArch64: turn on signum intrinsics by default on Ampere CPUs
P4 JDK-8343607 C2: Shenandoah crashes during barrier expansion in Continuation::enter
P4 JDK-8350211 CTW: Attempt to preload all classes in constant pool
P4 JDK-8349753 Incorrect use of CodeBlob::is_buffer_blob() in few places
P4 JDK-8350683 Non-C2 / minimal JVM crashes in the build on ppc64 platforms
P4 JDK-8351033 RISC-V: TestFloat16ScalarOperations asserts with offset (4210) is too large to be patched in one beq/bge/bgeu/blt/bltu/bne instruction!
P4 JDK-8339889 Several compiler tests ignore vm flags and not marked as flagless
P4 JDK-8350386 Test TestCodeCacheFull.java fails with option -XX:-UseCodeCacheFlushing
P4 JDK-8352512 TestVectorZeroCount: counter not reset between iterations
P4 JDK-8343978 Update the default value of CodeEntryAlignment for Ampere-1A and 1B
P5 JDK-8352866 TestLogJIT.java runs wrong test class

hotspot/gc

Priority Bug Summary
P2 JDK-8352508 [Redo] G1: Pinned regions with pinned objects only reachable by native code crash VM
P3 JDK-8351500 G1: NUMA migrations cause crashes in region allocation
P4 JDK-8314840 3 gc/epsilon tests ignore external vm options
P4 JDK-8276995 Bug in jdk.jfr.event.gc.collection.TestSystemGC
P4 JDK-8349213 G1: Clearing bitmaps during collection set merging not claimed by region
P4 JDK-8347126 gc/stress/TestStressG1Uncommit.java gets OOM-killed
P4 JDK-8349002 GenShen: Deadlock during shutdown

hotspot/jfr

Priority Bug Summary
P4 JDK-8344453 Test jdk/jfr/event/oldobject/TestSanityDefault.java timed out

hotspot/jvmti

Priority Bug Summary
P4 JDK-8305010 Test vmTestbase/nsk/jvmti/scenarios/sampling/SP05/sp05t003/TestDescription.java timed out: thread not suspended

hotspot/runtime

Priority Bug Summary
P3 JDK-8345569 [ubsan] adjustments to filemap.cpp and virtualspace.cpp for macOS aarch64
P3 JDK-8343191 Cgroup v1 subsystem fails to set subsystem path
P3 JDK-8353946 Incorrect WINDOWS ifdef in os::build_agent_function_name
P3 JDK-8350201 Out of bounds access on Linux aarch64 in os::print_register_info
P4 JDK-8349623 [ASAN] Gtest os_linux.glibc_mallinfo_wrapper_vm fails
P4 JDK-8347268 [ubsan] logOutput.cpp:357:21: runtime error: applying non-zero offset 1 to null pointer
P4 JDK-8346881 [ubsan] logSelection.cpp:154:24 / logSelectionList.cpp:72:94 : runtime error: applying non-zero offset 1 to null pointer
P4 JDK-8348323 Corrupted timezone string in JVM crash log
P4 JDK-8350313 Include timings for leaving safepoint in safepoint logging
P4 JDK-8338303 Linux ppc64le with toolchain clang - detection failure in early JVM startup
P4 JDK-8350499 Minimal build fails with slowdebug builds
P4 JDK-8351382 New test containers/docker/TestMemoryWithSubgroups.java is failing
P4 JDK-8351665 Remove unused UseNUMA in os_aix.cpp
P4 JDK-8346832 runtime/CompressedOops/CompressedCPUSpecificClassSpaceReservation.java fails on RISC-V
P4 JDK-8352946 SEGV_BND signal code of SIGSEGV missing from our signal-code table
P4 JDK-8353329 Small memory leak when create GrowableArray with initial size 0
P4 JDK-8350103 Test containers/systemd/SystemdMemoryAwarenessTest.java fails on Linux ppc64le SLES15 SP6

hotspot/svc-agent

Priority Bug Summary
P4 JDK-8349039 Adjust exception No type named in database

hotspot/test

Priority Bug Summary
P4 JDK-8322983 Virtual Threads: exclude 2 tests

infrastructure/build

Priority Bug Summary
P3 JDK-8353709 Debug symbols bundle should contain full debug files when building --with-external-symbols-in-bundles=public
P4 JDK-8350137 After JDK-8348975, Linux builds contain man pages for windows only tools
P4 JDK-8345590 AIX 'make all' fails after JDK-8339480
P4 JDK-8349375 Cleanup AIX special file build settings
P4 JDK-8349214 Improve size optimization flags for MSVC builds
P4 JDK-8353066 Properly detect Windows/aarch64 as build platform
P4 JDK-8348582 Set -fstack-protector when building with clang
P4 JDK-8349150 Support precompiled headers on AIX
P4 JDK-8350202 Tune for Power10 CPUs on Linux ppc64le

infrastructure/other

Priority Bug Summary
P4 JDK-8349370 Bump version numbers for 24.0.2

performance/libraries

Priority Bug Summary
P4 JDK-8349943 [JMH] Use jvmArgs consistently

security-libs/java.security

Priority Bug Summary
P2 JDK-8359170 Add 2 TLS and 2 CS Sectigo roots
P3 JDK-8303770 Remove Baltimore root certificate expiring in May 2025
P4 JDK-8346049 jdk/test/lib/security/timestamp/TsaServer.java warnings
P4 JDK-8349348 Refactor ClassLoaderDeadlock.sh and Deadlock.sh to run fully in java
P4 JDK-8350498 Remove two Camerfirma root CA certificates
P4 JDK-8344316 security/auth/callback/TextCallbackHandler/Password.java make runnable with JTReg and add the UI
P4 JDK-8345134 Test sun/security/tools/jarsigner/ConciseJarsigner.java failed: unable to find valid certification path to requested target
P4 JDK-8352302 Test sun/security/tools/jarsigner/TimestampCheck.java is failing
P4 JDK-8345133 Test sun/security/tools/jarsigner/TsacertOptionTest.java failed: Warning found in stdout
P4 JDK-8349492 Update sun/security/pkcs12/KeytoolOpensslInteropTest.java to use a recent Openssl version

security-libs/javax.net.ssl

Priority Bug Summary
P4 JDK-8344629 SSLSocketNoServerHelloClientShutdown test timeout

security-libs/jdk.security

Priority Bug Summary
P4 JDK-8349501 Relocate supporting classes in security/testlibrary to test/lib/jdk tree
P4 JDK-8346285 Update jarsigner compatibility test for change in default digest algorithm

tools/javac

Priority Bug Summary
P4 JDK-8343882 BasicAnnoTests doesn't handle multiple annotations at the same position

tools/jlink

Priority Bug Summary
P3 JDK-8353185 Introduce the concept of upgradeable files in context of JEP 493
P3 JDK-8355524 Only every second line in upgradeable files is being used
P4 JDK-8347302 Mark test tools/jimage/JImageToolTest.java as flagless

tools/jpackage

Priority Bug Summary
P3 JDK-8347298 Bug in JPackageCommand.ignoreFakeRuntime()
P3 JDK-8347300 Don't exclude the "PATH" var from the environment when running app launchers in jpackage tests
P3 JDK-8345185 Update jpackage to not include service bindings by default
P4 JDK-8347296 WinInstallerUiTest fails in local test runs if the path to test work directory is longer that regular

tools/jshell

Priority Bug Summary
P4 JDK-8351639 Improve debuggability of test/langtools/jdk/jshell/JdiHangingListenExecutionControlTest.java test
P4 JDK-8347629 Test FailOverDirectExecutionControlTest.java fails with -Xcomp

xml

Priority Bug Summary
P4 JDK-8344925 translet-name ignored when package-name is also set