System.LoadLibrary()找不到Library

时间:2016-07-01 14:21:18

标签: java

我有一个图书馆/home/me/myfolder/mylib.so

并在执行时

System.out.println(System.getProperty("java.library.path"));

我得到/home/me/myfolder。但如果我尝试加载它:

System.loadLibrary("mylib");

发生此错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no mylib.so in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
    at java.lang.Runtime.loadLibrary0(Runtime.java:870)
    at java.lang.System.loadLibrary(System.java:1122)
    at MainClass.main(MainClass.java:11)

已尝试使用mylib.so代替。该库是从Haskell Code创建的。

1 个答案:

答案 0 :(得分:4)

在Linux / Unix上,我相信它会查找lib<name>.so,因此请尝试将您的库重命名为/home/me/myfolder/libmylib.so,并使用System.loadLibrary("mylib");加载它。