如何将 JRE 与 Launch4j 捆绑在一起?

2022-08-31 11:16:07

我的计算机上有Launch4J,这是一个很棒的程序。我感兴趣的功能之一是能够在一般.EXE文件中捆绑JRE。但是,我找不到任何描述如何执行此操作的文档。

如何将 JRE 与 EXE 捆绑在一起?另外,在哪里可以获得紧凑、便携的 JRE 来运行?Oracle 上的下载链接适用于安装程序包。


答案 1

经过一些尝试,我终于得到了一个解决方法,将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文件夹中复制粘贴的。


答案 2

我做了以下操作,它使用ver Launch4j 3.11对我有用:

  1. 为我的应用程序创建了一个新文件夹(例如称为 MyApp)。
  2. 已将 jar 文件从 java 项目 dist 文件夹与 lib 文件夹一起复制到 MyApp。
  3. 在我的应用程序文件夹MyApp中创建了一个名为jre的文件夹,因此现在MyApp文件夹包含:
    • 我的应用.jar
    • lib < - 这有我的java应用程序所需的库。
    • 杰瑞
  4. 已将 bin 和 lib 文件夹从 java jre 文件夹(C:\Program Files (x86)\Java\jre7)复制到 MyApp\jre
  5. 在 Launch4j 中,设置了所有必需的选项,然后将捆绑的 JRE 路径设置为“jre”

    Launch4j JRE options

  6. 确保在搜索选项中选择了“仅使用私有 JDK 运行时”。

推荐