2013-02-16 61 views
0

我试图从我的java程序中使用本机库。 我可以通过以下命令在/usr/local/lib中成功加载libpHash.so加载本地库时出现UnsatisfiedLinkError

System.loadLibrary("pHash"); 

但是,当我试图通过调用System.loadLibrary("pHash-jni")我得到以下错误在同一文件夹加载libpHash-jni.so

Exception in thread "main" java.lang.UnsatisfiedLinkError: /usr/local/lib/libpHash-jni.so: libpHash.so.0: cannot open shared object file: No such file or directory

为什么?


一些额外的信息:

  • libpHash.solibpHash.so.0都是符号链接到libpHash.so.0.0.0
  • libpHash.so.0.0.0libpHash-jni.so均为ELF 64位LSB的共享对象
  • 我有64位JVM
+0

检查您的容器中的其他应用程序是否已加载此程序,以防万一您正在运行Web应用程序 – kuhajeyan 2015-09-19 20:04:07

回答

0

一种可能的解决方案是使用ldconfig更新动态链接程序高速缓存。如果这没有解决问题您也可以尝试设置LD_LIBRARY_PATH

export LD_LIBRARY_PATH=/usr/local/lib 

,并重新启动程序。

相关问题