我的计算机上装有Launch4J,它是一个很棒的程序。我感兴趣的功能之一是能够将JRE捆绑在常规.EXE文件中。但是,我找不到任何描述如何执行此操作的文档。
如何将JRE与EXE捆绑在一起?另外,在哪里可以运行紧凑的便携式JRE?Oracle上的下载链接适用于安装程序包。
Answers:
经过一些尝试,我终于找到了解决方法,将jre捆绑在我的应用程序中:
我将应用程序打包为一个zip文件,其中包含以下文件夹:
containerFolder
|- jre
|-bin (in bin there is java.exe)
|-lib
|- cfg (to save the user configuration, but it's not needed)
|- bin (my application with the .exe and the .jar and all the other stuff)
在launch4j的xml文件中,我像这样配置jre:
<jre>
<path>../jre</path>
<opt>-DgvSIG.confDir=../cfg</opt>
</jre>
这里的窍门是路径不是到java.exe文件的路径。jre的路径是相对于.exe的位置的,它应该指向java.exe文件之前的一个文件夹
我正在使用的jre文件夹只是Windows系统上安装的jre文件夹的复制和粘贴。
我做了以下工作,并使用ver Launch4j 3.11对我有用:
在Launch4j中设置了所有必需的选项后,然后将捆绑JRE路径设置为“ jre”
可以在https://github.com/vZome/vzome/blob/master/desktop/platform/windows/README.md中找到使用Launch4J将Java应用程序与特定JRE捆绑在一起的工作示例。该特定发行版配置为要求 vZome使用捆绑的JRE,而不是在目标平台上找到的任何JRE。
希望这可以帮助。
通常可以在您的SDK文件夹中找到jre。是的,在线链接是安装程序,但安装后,JRE现在位于本地磁盘上。我的位于
${jdk folder}\jre
如果您确实需要,可以从JRE不需要的部分手动删除(我不确定在线上有什么可用)。