Skip to Main Content

Java SE (Java Platform, Standard Edition)

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Microsoft STL redistributable found in JDK is out of date

conrockJan 7 2025 — edited 5 days ago

Good day!

Maybe there is a workaround for this other than modifying the JDK installation (removing the jdk-21\bin\msvcp140.dll file) on all end user machines.

Note: I have submitted a bug report.

This issue:

There is an outdated version of the MS redistributables, specifically msvcp140.dll, located in the bin folder of installed JDKs.
A recent build of the native GDAL libraries crashes when used within a Java application using the Oracle JDK 21.0.5 but works once the jdk-21\bin\msvcp140.dll file is removed.

The application also works without crashing when using the most recent Adoptium JDK. Here is the same bug from earlier in the year at Adoptium which was resolved: https://github.com/adoptium/temurin-build/issues/3887

According to available information, the Microsoft Visual C++ Redistributable version 14.36.32532 (in the Oracle JDK) was last updated on May 16, 2023 and may be reaching end of support later this year. The latest release of the Microsoft Visual C++ Redistributable is 14.42.34433 which was released on November 12, 2024.

--------------- T H R E A D ---------------

Current thread (0x000001ffe2e31120): JavaThread "pool-3-thread-2" [_thread_in_native, id=116064, stack(0x000000f05ad00000,0x000000f05ae00000) (1024K)]

Stack: [0x000000f05ad00000,0x000000f05ae00000], sp=0x000000f05adfe430, free space=1017k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
C [msvcp140.dll+0x12f58]
C [gdal.dll+0xb970ad]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
j org.gdal.gdal.gdalJNI.Open__SWIG_0(Ljava/lang/String;I)J+0
j org.gdal.gdal.gdal.Open(Ljava/lang/String;I)Lorg/gdal/gdal/Dataset;+2
j ...
J 10393 c1 java.util.concurrent.FutureTask.run()V java.base@21.0.5 (123 bytes) @ 0x000001ff89922e6c [0x000001ff899226c0+0x00000000000007ac]
j java.util.concurrent.ThreadPoolExecutor.runWorker(Ljava/util/concurrent/ThreadPoolExecutor$Worker;)V+92 java.base@21.0.5
j java.util.concurrent.ThreadPoolExecutor$Worker.run()V+5 java.base@21.0.5
J 5383 c1 java.lang.Thread.run()V java.base@21.0.5 (23 bytes) @ 0x000001ff88d9a87c [0x000001ff88d9a660+0x000000000000021c]
v ~StubRoutines::call_stub 0x000001ff8f81100d

siginfo: EXCEPTION_ACCESS_VIOLATION (0xc0000005), reading address 0x0000000000000000

Workaround: Delete jdk-21\bin\msvcp140.dll

Comments
Post Details
Added on Jan 7 2025
0 comments
53 views