On Fri, 7 Feb 2025 20:10:02 GMT, Jiangli Zhou <jian...@openjdk.org> wrote:

>> This is similar to https://github.com/openjdk/jdk/pull/23431 change. It 
>> removes libjvm.so as a recorded dependency for libExplicitAttach.so by not 
>> explicitly link libExplicitAttach.so with libjvm.so at build time. To do 
>> that, it also changes libExplicitAttach.c to dynamically lookup the 
>> JNI_GetCreatedJavaVMs symbol then invokes the function using the obtained 
>> address. The change makes the test to work on both regular 'jdk' image and 
>> the 'static-jdk' image.
>> 
>> There are discussions in https://github.com/openjdk/jdk/pull/23431 comment 
>> thread among @dholmes-ora, @AlanBateman and myself. Based on my 
>> understanding, we are converging on the approach to fix just these few 
>> tests, and both @dholmes-ora and @AlanBateman are okay with that. So I'm 
>> sending out this PR for libExplicitAttach's fix as well.
>
> Jiangli Zhou has updated the pull request incrementally with one additional 
> commit since the last revision:
> 
>   Move JNI_GetCreatedJavaVMs lookup into JNI_OnLoad, to address AlanBateman's 
> suggestion.

test/jdk/java/lang/Thread/jni/AttachCurrentThread/libExplicitAttach.c line 57:

> 55:         return JNI_ERR;
> 56:     }
> 57:     return JNI_VERSION_1_8;

Is the JavaVM param passed to JNI_OnLoad usable in static builds? If so then 
this just needs to be saved, no need to use GetCreatedJavaVMs, right?

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/23500#discussion_r1947551019

Reply via email to