On Tue, 26 Mar 2024 21:11:09 GMT, Mandy Chung <[email protected]> wrote:
>> src/java.base/aix/classes/jdk/internal/loader/ClassLoaderHelper.java line 68:
>>
>>> 66: int dotIndex = name.lastIndexOf('.');
>>> 67: String memberName =
>>> name.substring(openBracketIndex,dotIndex);
>>> 68: //Reconstruct <libname>.so(<member_name>) as
>>> <libname>.a(<member_name>)
>>
>> Do we really need to support libname.so(member)? Isn't it always
>> libname.a(member)?
>
> I think `mapAlternativeName` isn't needed at all. If
> `loadLibraryOnlyIfPresent` returns false, `System.load("libname.a(member)")`
> should be passed to dlopen directly. @suchismith1993 can verify it.
@mlchung The first name constructed by Classloader is always lib<name>.so. So
we need a way to map it to lib<name>.a . Else it will search for .so and fail.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/17945#discussion_r1540650937