java.lang.UnsatisfiedLinkError chilkat库

问题描述 投票:0回答:1

我确定我可以加载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运行我的代码。

java maven shared-libraries nohup chilkat
1个回答
0
投票

使用

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放在目标之前。

© www.soinside.com 2019 - 2024. All rights reserved.