java 如何将JRE与Launch4j绑定?

brtdzjyr  于 2023-06-20  发布在  Java
关注(0)|答案(7)|浏览(372)

我的电脑上有Launch4J,这是一个很棒的程序。我感兴趣的其中一个特性是将JRE捆绑到通用的.EXE文件中的能力。但是,我找不到任何描述如何进行此操作的文档。
如何将JRE与EXE捆绑在一起?另外,我在哪里可以得到一个紧凑、便携的JRE来运行?Oracle上的下载链接用于安装程序包。

o2gm4chl

o2gm4chl1#

经过几次尝试,我终于找到了一个解决方案,将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文件夹中复制和粘贴。

kgsdhlau

kgsdhlau2#

我做了以下工作,它为我使用ver Launch 4j 3.11工作:
1.为我的应用程序创建了一个新文件夹(例如称为MyApp)。
1.将jar文件从java项目dist文件夹复制到MyApp沿着lib文件夹。

  • 在我的应用程序文件夹MyApp中创建了一个名为jre的文件夹,因此现在MyApp文件夹包含:
  • MyApp.jar
  • lib <-这里有我的java应用程序所需要的库。
  • 日本电力公司
  • 将bin和lib文件夹从java jre文件夹(C:\Program Files(x86)\Java\jre7)复制到MyApp\jre
  • 在Launch 4j中设置所有必需的选项,然后将绑定的JRE路径设置为“jre”

  • 确保在搜索选项中选择了“Only use private JDK runtimes”。
laximzn5

laximzn53#

和你一样的问题伙计。现在不用担心了。其全部解决以最大深度解决未来的解决方案。解决方案如何为您的jar捆绑JRE,而不需要用户安装java。您的Java应用程序将运行。
1.将libbin文件夹从JRE文件夹复制到项目dist文件夹

1.打开launch 4j并输入以下设置。

诀窍是你需要给予包含javaw.exe的完整路径。
Enjoy!

hgncfbus

hgncfbus4#

我刚刚做了这个。上面清楚地描述了捆绑JRE的方法。
在这里,我只是分享一个我奋斗过的经历。如果你想在launch 4j创建了 Package 器exe之后再创建一个安装程序exe,请注意launch 4j和jre的文件路径。这是我用来解决问题的方法:
launch4j、bin/jre、resources/bin/jre。
launch 4j、bin和resources处于同一级别。

yduiuuwa

yduiuuwa5#

上面提到的答案对我不起作用。我用的是JDK 20。我做了什么:
1.创建了我的Jar文件
1.为应用程序创建文件夹 * appFolder *
1.将jar文件放入 * appFolder *
1.在 * appFolder * 中创建了 * myJdk * 文件夹
1.将我机器上JDK的内容放在 * appFolder * 中的 * myJdk * 文件夹中
1.将绑定的JRE(在我的示例中是JDK)的路径设置为 * myJdk/bin *,它是相对于 * appFolder * 的。
一个简单的文件夹视图:

appFolder
|- myJdk
   |- all contents from my jdk folder, installed on the machine. (The only folder I could remove was the jmods. All the rest were needed)
|- jar file
6ljaweal

6ljaweal6#

jre通常可以在SDK文件夹中找到。是的,在线链接是安装程序,但一旦安装,JRE现在就位于您的本地磁盘上。矿山位于

${jdk folder}\jre

如果您真的需要,可以手动删除JRE中不需要的部分(我不确定网上有什么可用的)。

zynd9foi

zynd9foi7#

https://github.com/vZome/vzome/blob/master/desktop/platform/windows/README.md中可以找到使用Launch4J将Java应用程序与特定JRE捆绑在一起的工作示例。此特定发行版配置为***要求***vZome使用***捆绑的JRE***,而不是目标平台上的任何JRE。
希望这能帮上忙。

相关问题