0

我正在尝试使用我的 java 程序中的本机库。我可以通过以下命令成功加载libpHash.so/usr/local/lib

System.loadLibrary("pHash");

但是,当我尝试libpHash-jni.so通过调用加载到同一文件夹中时,System.loadLibrary("pHash-jni")出现以下错误:

线程“主”java.lang.UnsatisfiedLinkError 中的异常:/usr/local/lib/libpHash-jni.so:libpHash.so.0:无法打开共享对象文件:没有这样的文件或目录

为什么?


一些附加信息:

  • libpHash.so并且libpHash.so.0都是指向的符号链接libpHash.so.0.0.0
  • libpHash.so.0.0.0并且libpHash-jni.so都是 ELF 64 位 LSB 共享对象
  • 我有 64 位 JVM
4

1 回答 1

0

一种可能的解决方案是使用ldconfig. 如果这不能解决问题,您也可以尝试设置LD_LIBRARY_PATH

export LD_LIBRARY_PATH=/usr/local/lib

并重新启动您的程序。

于 2013-02-16T23:05:57.233 回答