Describe the Issue
- I am trying to launch (HotSpot) JVM from inside of native image application
- I got it working on Mac and Linux
- I cannot get it working on Windows and GraalVM for JDK 24
- however it works on GraalVM for JDK 21!
- e.g. it is some kind of regression
Using the latest version of GraalVM can resolve many issues.
GraalVM Version
https://github.com/JaroslavTulach/LaunchJdkViaJni/actions/runs/14883811948/job/41801352178?pr=1#step:3:20
java 24.0.1 2025-04-15
Java(TM) SE Runtime Environment Oracle GraalVM 24.0.1+9.1 (build 24.0.1+9-jvmci-b01)
Java HotSpot(TM) 64-Bit Server VM Oracle GraalVM 24.0.1+9.1 (build 24.0.1+9-jvmci-b01, mixed mode, sharing)
Operating System and Version
Microsoft Windows Server 2022 10.0.20348
Build Command
Expected Behavior
Actual Behavior
mvn -Pnative install fails on GraalVM for JDK22, 23, 24
- failure output:
C:\hostedtoolcache\windows\graalvm-jdk-24_windows-x64_bin\24.0.0\x64\graalvm-jdk-24.0.1+9.1\lib\svm\clibraries\windows-amd64\libchelper.lib
C:\hostedtoolcache\windows\graalvm-jdk-24_windows-x64_bin\24.0.0\x64\graalvm-jdk-24.0.1+9.1\lib\static\windows-amd64\net.lib
C:\hostedtoolcache\windows\graalvm-jdk-24_windows-x64_bin\24.0.0\x64\graalvm-jdk-24.0.1+9.1\lib\static\windows-amd64\extnet.lib
C:\hostedtoolcache\windows\graalvm-jdk-24_windows-x64_bin\24.0.0\x64\graalvm-jdk-24.0.1+9.1\lib\static\windows-amd64\nio.lib
C:\hostedtoolcache\windows\graalvm-jdk-24_windows-x64_bin\24.0.0\x64\graalvm-jdk-24.0.1+9.1\lib\static\windows-amd64\java.lib
C:\hostedtoolcache\windows\graalvm-jdk-24_windows-x64_bin\24.0.0\x64\graalvm-jdk-24.0.1+9.1\lib\svm\clibraries\windows-amd64\jvm.lib
C:\hostedtoolcache\windows\graalvm-jdk-24_windows-x64_bin\24.0.0\x64\graalvm-jdk-24.0.1+9.1\lib\svm\clibraries\windows-amd64\libchelper.lib
C:\hostedtoolcache\windows\graalvm-jdk-24_windows-x64_bin\24.0.0\x64\graalvm-jdk-24.0.1+9.1\lib\static\windows-amd64\net.lib
C:\hostedtoolcache\windows\graalvm-jdk-24_windows-x64_bin\24.0.0\x64\graalvm-jdk-24.0.1+9.1\lib\static\windows-amd64\extnet.lib
C:\hostedtoolcache\windows\graalvm-jdk-24_windows-x64_bin\24.0.0\x64\graalvm-jdk-24.0.1+9.1\lib\static\windows-amd64\nio.lib
C:\hostedtoolcache\windows\graalvm-jdk-24_windows-x64_bin\24.0.0\x64\graalvm-jdk-24.0.1+9.1\lib\static\windows-amd64\java.lib
C:\hostedtoolcache\windows\graalvm-jdk-24_windows-x64_bin\24.0.0\x64\graalvm-jdk-24.0.1+9.1\lib\svm\clibraries\windows-amd64\jvm.lib
jvm.lib(jni.obj) : error LNK2005: JNI_GetDefaultJavaVMInitArgs already defined in LaunchJdkViaJni.obj
jvm.lib(jni.obj) : error LNK2005: JNI_CreateJavaVM already defined in LaunchJdkViaJni.obj
jvm.lib(jni.obj) : error LNK2005: JNI_GetCreatedJavaVMs already defined in LaunchJdkViaJni.obj
net.lib(net_util_md.obj) : error LNK2005: DllMain already defined in jvm.lib(os_windows.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: JVM_ActiveProcessorCount already defined in jvm.lib(jvm.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: JVM_BeforeHalt already defined in jvm.lib(jvm.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: JVM_CurrentTimeMillis already defined in jvm.lib(jvm.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: JVM_FindSignal already defined in jvm.lib(jvm.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: JVM_GetNanoTimeAdjustment already defined in jvm.lib(jvm.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: JVM_GetTemporaryDirectory already defined in jvm.lib(jvm.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: JVM_Halt already defined in jvm.lib(jvm.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: JVM_IsStaticallyLinked already defined in jvm.lib(jvm.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: JVM_NanoTime already defined in jvm.lib(jvm.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: jio_fprintf already defined in jvm.lib(jvm.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: jio_snprintf already defined in jvm.lib(jvm.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: jio_vfprintf already defined in jvm.lib(jvm.obj)
jvm.lib(JvmFuncs.obj) : error LNK2005: jio_vsnprintf already defined in jvm.lib(jvm.obj)
Creating library C:\Users\RUNNER~1\AppData\Local\Temp\SVM-1062366860234045289\LaunchJdkViaJni.lib and object C:\Users\RUNNER~1\AppData\Local\Temp\SVM-1062366860234045289\LaunchJdkViaJni.exp
jvm.lib(os_windows.obj) : error LNK2019: unresolved external symbol CallNtPowerInformation referenced in function "public: static void __cdecl os::pd_print_cpu_info(class outputStream *,char *,unsigned __int64)" (?pd_print_cpu_info@os@@SAXPEAVoutputStream@@PEAD_K@Z)
jvm.lib(os_windows.obj) : error LNK2019: unresolved external symbol __imp_timeBeginPeriod referenced in function "public: int __cdecl PlatformEvent::park(__int64)" (?park@PlatformEvent@@QEAAH_J@Z)
jvm.lib(os_windows.obj) : error LNK2019: unresolved external symbol __imp_timeEndPeriod referenced in function "public: int __cdecl PlatformEvent::park(__int64)" (?park@PlatformEvent@@QEAAH_J@Z)
D:\a\LaunchJdkViaJni\LaunchJdkViaJni\target\LaunchJdkViaJni.exe : fatal error LNK1120: 3 unresolved externals
Steps to Reproduce
Additional Context
No response
Build Log Output and Error Messages
No response
Describe the Issue
Using the latest version of GraalVM can resolve many issues.
GraalVM Version
https://github.com/JaroslavTulach/LaunchJdkViaJni/actions/runs/14883811948/job/41801352178?pr=1#step:3:20
Operating System and Version
Microsoft Windows Server 2022 10.0.20348
Build Command
git checkout -f 2b0c8550a5d198f45af0e1fe1459e87a101ea793mvn -Pnative installExpected Behavior
mvn -Pnative installsucceeds and produces.exefileActual Behavior
mvn -Pnative installfails on GraalVM for JDK22, 23, 24Steps to Reproduce
git checkout -f 2b0c8550a5d198f45af0e1fe1459e87a101ea793mvn -Pnative installAdditional Context
No response
Build Log Output and Error Messages
No response