我无法让Java看到主目录中的文件'libvensim.so'。

我尝试设置LD_LIBRARY PATH。...“ echo $ LD_LIBRARY_PATH”返回“ ./libvensim.so”

当我运行代码时:

java -cp ./vensim.jar:. -Djava.library.path=./libvensim.so Test


我收到错误“无法加载本机库。错误:java.lang.UnsatisfiedLinkError:java.library.path中没有libvensim”。

Test.java是测试我是否可以访问.so的简单类:

import com.vensim.Vensim;

public class Test {

public static void main(String[] args) throws Exception {

    Vensim vensim = new Vensim("libvensim");

}

}


谁能看到我的问题?非常感谢。

最佳答案

LD_LIBRARY_PATH应指向包含.so文件的目录。尝试:

java -cp ./vensim.jar:. -Djava.library.path=. Test


要么

export LD_LIBRARY_PATH=/path/to/dir
java -cp ./vensim.jar:. Test

10-08 16:18