My project has shard libraries we load into Java via System.load()
. Previously, we were using the AdoptOpenJDK Alpine docker image, but we are now trying to migrate to the Eclipse Temurin Alpine image. With the former image, everything works, but when trying to switch to the new image, the System.load()
throws a UnsatisfiedLinkError
for an image that should have already been loaded. My guess is this has to do with the swap from glibc
to musl
, but it seems odd that musl
wouldn't work right out of the box like glibc
did.
Example:
System.load("/path/first.so");
System.load("/path/second.so"); // UnsatisifiedLinkError: /path/first.so: Error loading shared library second.so: No such file or directory (needed by /path/first.so)