首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >launch4j exe找不到jre

launch4j exe找不到jre
EN

Stack Overflow用户
提问于 2014-06-19 21:57:40
回答 3查看 7.6K关注 0票数 2

关于launch4j的问题

程序由一个uber jar通过maven阴影插件和在任何jre7机器、windows或linux上运行良好的数据/运行组成。

然而,我一直无法让launch4j工作。

launch4j config.xml:

代码语言:javascript
运行
复制
<?xml version="1.0" encoding="UTF-8"?>
<launch4jConfig>
  <dontWrapJar>false</dontWrapJar>
  <headerType>gui</headerType>
  <jar>pllsolver-0.2alpha.jar</jar>
  <outfile>pllsolver-0.2alpha.exe</outfile>
  <errTitle>NO JRE FOUND</errTitle>
  <cmdLine></cmdLine>
  <chdir></chdir>
  <priority>normal</priority>
  <downloadUrl>http://java.com/download</downloadUrl>
  <supportUrl></supportUrl>
  <stayAlive>false</stayAlive>
  <manifest></manifest>
  <icon>sicr.ico</icon>
  <jre>
    <path>jre7</path>
    <bundledJre64Bit>false</bundledJre64Bit>
    <minVersion></minVersion>
    <maxVersion></maxVersion>
    <jdkPreference>preferJre</jdkPreference>
    <runtimeBits>64/32</runtimeBits>
  </jre>
  <splash>
    <file>sicr.bmp</file>
    <waitForWindow>false</waitForWindow>
    <timeout>5</timeout>
    <timeoutErr>true</timeoutErr>
  </splash>
  <messages>
  </messages>
</launch4jConfig>

然后,在windows上,我尝试这样做:

代码语言:javascript
运行
复制
PS K:\test> set PATH="K:\test\jre7\bin\"
PS K:\test> ..\launch4j\launch4jc.exe .\config.xml
launch4j: Compiling resources
launch4j: Linking
launch4j: Wrapping
launch4j: Successfully created K:\test\.\pllsolver-0.2alpha.exe
PS K:\test> .\pllsolver-0.2alpha.exe
PS K:\test>

在这一点上,我得到了一个很好的窗口,它是如何找不到JRE的。

Java在K:\test\jre7\bin\java.exe中,我的jar是K:\test\pllsolver-0.2alpha.jar

此外,我还不知道这是否是一个问题,但是可执行文件和数据/需要位于同一个目录中。我计划以后做得更好,但我对Windows变量没有一个清晰的理解。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-03-09 12:33:14

有点晚了,但也许还能帮上忙.

在launch4j和JRE中可以肯定的一件事是将JRE捆绑在应用程序的文件夹中。

为此:

  • 使用“*.exe”在文件夹中创建路径“jre”
  • 在此文件夹中复制JRE (此jre必须符合您设置的“min”/“max”条件)
  • 在'.xml‘的配置中设置'/jre’

..。这应该能行

票数 2
EN

Stack Overflow用户

发布于 2020-10-22 09:32:09

我在使用launch4j 3.12 (2020)和OpenJDK的JRE设置中苦苦挣扎,还得到了“找不到java运行时”的消息。我的目标是使用OpenJDK (https://adoptopenjdk.net/)两种成功的方法:

  1. 安装OpenJDK,激活JavaSoft (Oracle)注册表项,并选择“只使用公共JREs”启动4j-选项。
  2. 使用jre选项集安装OpenJDK,并将JRE选项卡中的“捆绑JRE路径”设置为%JAVA_HOME% (XMLContent:%JAVA_HOME%),这样您就可以为不同的应用程序使用不同的JRE,为每个应用程序设置JAVA_HOME变量。
票数 3
EN

Stack Overflow用户

发布于 2021-07-23 14:09:21

launch4j似乎在寻找相对于其“outfile”位置的JRE路径。

解决办法:

  • 你可以使用绝对路径。'C:\loc\of\jre‘
  • 将您的JRE放在您的“outfile”目录中,并相对地设置JRE路径,例如'jre‘
  • 将JRE路径视为相对于“outfile”目录,例如“....\somefolder\jre”

我的launch4j版本: 3.14

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24316881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档