是否有可能建立一个HelloWorld.lib并将其加载到使用JNI Java应用程序? 或者,它只是共享库的作品?
我找不到JNI文档上的一个明确的答案,也没有提及“静态库”。
是否有可能建立一个HelloWorld.lib并将其加载到使用JNI Java应用程序? 或者,它只是共享库的作品?
我找不到JNI文档上的一个明确的答案,也没有提及“静态库”。
它需要一个动态库。 幸运的是,你可以从一个静态生成一个动态库。
Java的8支持静态链接本地库http://openjdk.java.net/jeps/178
要在运行时加载库它必须是一个DLL(窗口)。 如果你有一个静态库(LIB),你必须通过JNI来使用它,你必须创建一个包装DLL
你将不得不将其链接到JVM的,你没有办法做到这一点。 这就是为什么JNI与共享库,而不是静态的定义。