When i'm trying to load the .so file from the Java, i'm getting error like this.
Exception in thread "main" java.lang.UnsatisfiedLinkError: no yeslib.so in java.library.path
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1681)
at java.lang.Runtime.loadLibrary0(Runtime.java:840)
at java.lang.System.loadLibrary(System.java:1047)
at com.rct.micros.util.GetCustClass.getScratchCode(GetCustClass.java:76)
at com.rct.micros.util.GetCustClass.main(GetCustClass.java:39)
我尝试过System.load(absoulte path)和System.loadLibrary(sofilename)。两者都给出了同样的错误。当我将这个so文件复制到usr / lib / jvm包时,它正在工作..
任何人都可以帮助如何使用Java解决这个问题。我在Linux机器上运行。
答案 0 :(得分:0)
库可能在您的路径上,但由于其他原因无法加载。
我用来调试这样的问题的一个技巧是运行java -Xrunsofilename
-Xrun是加载JVMPI库(旧的分析界面)的JVM选项。如果成功,它将加载库并抱怨它不是代理库。但如果它失败(希望!)它将打印一条错误消息。这通常是比来自UnsatisfiedLinkError的更具描述性的错误消息。