我确定我可以加载libchilkat.jnilib文件。当我将正确的路径更改为错误的路径时,更改错误无法加载库。所以我确定我的图书馆负担。 (我使用try和catch并正确传递。)上载此库。在那之后,当我想使用该库的部分时:CkGlobal glob = new CkGlobal();
我收到此错误:
java.lang.UnsatisfiedLinkError:嵌套异常是java.lang.UnsatisfiedLinkError:com.chilkatsoft.chilkatJNI.swig_module_init()V],根本原因是com.chilkatsoft.chilkatJNI.swig_module_init()V
我搜索但未找到任何内容。此错误类似于java.lang.UnsatisfiedLinkError
:但由于其他java.lang.UnsatisfiedLinkError include 'Native code library failed to load.'
而不同
我确定我的书架已加载。
如果运行此代码的项目'mvn exec:java',一切都好,但我想在GC上使用nohup运行我的代码。
使用
import com.chilkatsoft.CkGlobal;
public class Simple {
String PATH_TO_LIB="/full/path/to/lib";
static {
System.load(PATH_TO_LIB + "/libchilkat.so");
}
public static void main(String argv[]) {
CkGlobal glob = new CkGlobal();
}
}
和这样的编译:
> javac -cp ./chilkat.jar Simple.java
> java -cp .:./chilkat.jar Simple
> nohup java -cp .:chilkat.jar Simple
它按预期工作。我建议看一下Maven执行的确切命令-将-X
放在目标之前。