我正在使用JNI从我的java代码中调用名为“libmy_jni.so”的共享库。这些在其他操作系统中没有任何问题,但在AIX中,我看到以下错误。我已经检查了LIBPATH和LD_LIBRARY_PATH(以防万一)是否正确设置并匹配x86模块与32位java(和x64与64位java)。
Exception in thread "Thread-1" java.lang.UnsatisfiedLinkError: my_jni (No such file or directory)
加载库的java代码是
File sofile = new File("libmy_jni.so");
if(!sofile.exists())
{
System.out.println("can't find the moudle.");
System.exit(1);
}
System.loadLibrary("my_jni");
据我所知,导致上述错误的大多数情况都是错误的库路径或不匹配的32/64位架构。但就我而言,我看不出可能是什么原因。
>>file libmy_jni.so
libmy_jni.so: 64-bit XCOFF executable or object module not stripped