我有一个需要使用本机库的应用程序:libfoo.so
我的代码如下:
访问器.java:
public class Accessor {
static {
String path = "/usr/lib/libfoo.so";
System.load(path);
}
...
}
当我在独立的 tomcat 服务器中部署我的 war 文件时,这工作得很好。
问题是当我尝试运行嵌入式 tomcat 服务器时:
grails run-app
我得到一个 UnsatisfiedLinkError:
Caused by UnsatisfiedLinkError: com.foo.bar.GFS_MALJNI.new_Accessor__SWIG_0(Ljava/lang/String;I)J
->> 39 | <init> in com.foo.bar.Accessor
有趣的是,如果我将BuildConfig.groovy
文件更改为 fork 模式,它也可以工作。
BuildConfig.groovy:
grails.project.fork = [
run: [maxMemory:1024, minMemory:64, debug:false, maxPerm:256]
]
我不想在 fork 模式下运行它。