我使用的是带有捆绑jre版本的Launch4j。jre版本的路径必须是可配置的,所以我建议使用.ini文件。我不懂launch4j网站上的文档,所以我来这里寻求帮助。
这是我的launch4j配置的一部分:
<jre minVersion="1.6.0">
<path>%JRE_PATH%</path>
<jdkPreference>preferJre</jdkPreference>
</jre>
这在我的myapp.l4j.ini中:
-JRE_PATH="D:buildsjre"
但是exe文件总是说:
此应用程序被配置为使用捆绑的Java运行时环境,但运行时丢失或损坏
JRE_PATH变量应该在运行时添加到PATH元素中。
我做错了什么?
我查看了launch4j文档中的配置文件以及其他JVM选项(其中提到了xxx.l4j.ini)。
我认为您误解了如何处理.ini文件。我认为它只是一个可以为应用程序指定运行时JVM选项(例如-D
和-X
参数)的地方。我不认为这是一个通用的变量声明文件。
我认为在XML配置文件(%JRE_PATH%)中使用环境变量是无效的。文件中说,这应该是一条相对或绝对的路径。我认为XML配置文件中不支持变量替换。
AFAIK用户无法在.ini文件中配置jre的路径,但您可以将jre与应用程序捆绑在一起,并在.exe中指定它的位置。
看看这个。