使用JNI的应用程序最佳分发方式

3
我目前正在开发一个Windows桌面应用程序,该应用使用JNI调用位于jar文件内的方法。
我需要知道最佳打包方式,以便可以链接到jvm.dll。我不确定是否应该将JDK bin目录中找到的所有二进制文件打包到我的安装文件中(不确定是否允许这样做)?
问题在于,在线上找到的所有示例都直接链接JDK安装路径中找到的jvm.dll。由于我的应用是商业应用程序,我不能依赖或要求每个用户在我的应用程序旁安装JDK,因为那太荒谬了。
请问有人能澄清打包这类应用程序的最佳方法吗?
谢谢!
1个回答

2

jvm.dll也随着常规的Java运行时(bin / client子目录)一起安装。通过检查一些注册表值,您可以找到其路径,从那里加载它并检查是否安装了正确的版本。如果您已经链接了jvm.lib,则需要将jvm.dll添加到延迟加载的dll列表中,以便在运行时加载它。

有关详细信息,请参阅我最近回答的另一个问题:
https://stackoverflow.com/a/14434203/93652


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接