是否可以通过JNI将静态库链接到Java?

时间:2013-03-15 13:27:30

标签: java java-native-interface static-libraries

是否可以构建HelloWorld.lib并使用JNI将其加载到Java应用程序?或者它只适用于共享库?

我找不到关于JNI文档的明确答案,没有提到“静态库”。

3 个答案:

答案 0 :(得分:3)

它需要是一个动态库。幸运的是,您可以从静态库中构建动态库。

答案 1 :(得分:1)

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

答案 2 :(得分:1)

您必须将其链接到JVM,而您无法做到这一点。这就是为什么JNI是用共享库定义的,而不是静态库。