是否有可能通过JNI静态链接库到Java?(Is it possible to link a sta

2019-07-21 17:00发布

是否有可能建立一个HelloWorld.lib并将其加载到使用JNI Java应用程序? 或者,它只是共享库的作品?

我找不到JNI文档上的一个明确的答案,也没有提及“静态库”。

Answer 1:

它需要一个动态库。 幸运的是,你可以从一个静态生成一个动态库。



Answer 2:

Java的8支持静态链接本地库http://openjdk.java.net/jeps/178



Answer 3:

要在运行时加载库它必须是一个DLL(窗口)。 如果你有一个静态库(LIB),你必须通过JNI来使用它,你必须创建一个包装DLL



Answer 4:

你将不得不将其链接到JVM的,你没有办法做到这一点。 这就是为什么JNI与共享库,而不是静态的定义。



文章来源: Is it possible to link a static library to Java through JNI?