我正在尝试使用java程序中的本机库。
我可以通过以下命令在libpHash.so
中成功加载/usr/local/lib
。
System.loadLibrary("pHash");
但是当我尝试通过调用libpHash-jni.so
在同一文件夹中加载System.loadLibrary("pHash-jni")
时,我收到以下错误:
线程“main”中的异常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共享对象答案 0 :(得分:0)
一种可能的解决方案是使用ldconfig
更新动态链接器缓存。如果这不能解决问题,您也可以尝试设置LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/usr/local/lib
并重新启动您的计划。