Java install4j和pref-jre.cfg

Java install4j和pref-jre.cfg,java,install4j,Java,Install4j,我们有一些客户在运行使用install4j构建的应用程序时遇到JVM错误。在大多数情况下,.install4j文件夹中有一个pref-jre.cfg文件,这是不正确的。例如,他们升级了java版本,pref-jre.cfg中的java引用不再存在。因此,编辑该文件以指向正确的位置可以解决问题 然而,我无法理解pref-jre.cfg最初是如何到达那里的。应用程序安装并没有创建它,我们没有就此向他们提出建议,而且他们还不够成熟,无法创建一个 有人知道在什么情况下会自动创建该文件吗 或者,一般来说,

我们有一些客户在运行使用install4j构建的应用程序时遇到JVM错误。在大多数情况下,.install4j文件夹中有一个pref-jre.cfg文件,这是不正确的。例如,他们升级了java版本,pref-jre.cfg中的java引用不再存在。因此,编辑该文件以指向正确的位置可以解决问题

然而,我无法理解pref-jre.cfg最初是如何到达那里的。应用程序安装并没有创建它,我们没有就此向他们提出建议,而且他们还不够成熟,无法创建一个

有人知道在什么情况下会自动创建该文件吗

或者,一般来说,install4j应该如何处理Java环境的更新


谢谢

安装程序将运行JRE的路径写入
pref_JRE.cfg
。如果该JRE是捆绑的JRE,则会写入安装目录中的相应位置。您可以使用设置值,任何安装的启动器都将使用该JRE。如果版本更改并变得不兼容,或者路径不再存在,则启动器将执行“常规设置->Java版本”步骤中配置的JRE搜索序列。如果在该搜索序列中找不到JRE,将显示一个错误。

安装程序将其运行的JRE路径写入
pref_JRE.cfg
。如果该JRE是捆绑的JRE,则会写入安装目录中的相应位置。您可以使用设置值,任何安装的启动器都将使用该JRE。如果版本更改并变得不兼容,或者路径不再存在,则启动器将执行“常规设置->Java版本”步骤中配置的JRE搜索序列。如果在该搜索序列中找不到JRE,则会显示一个错误。

这是有道理的,尽管在我测试的4个系统中,有3个系统没有创建pref_JRE.cfg。只需安装jre.cfg。但当我深入研究主要问题时,即启动错误正在发生,看起来在运行本地jre时,PATH包括客户计算机上的所有其他java安装。我认为这就是问题发生的原因。如何定义或控制路径?我能看到的唯一可能的选项是Java版本中install4j搜索jre的选项?是这样,还是我还遗漏了什么?感谢
inst_jre.cfg
包含安装程序运行时使用的实际jre,如果首选jre不同,则编写
pref_jre.cfg
。这条路永远不会被搜索。您可以通过将参数
/create-i4j-log
传递给失败的启动器来调试搜索序列。这是有道理的,尽管在我测试的4个系统中,有3个系统没有创建pref_jre.cfg。只需安装jre.cfg。但当我深入研究主要问题时,即启动错误正在发生,看起来在运行本地jre时,PATH包括客户计算机上的所有其他java安装。我认为这就是问题发生的原因。如何定义或控制路径?我能看到的唯一可能的选项是Java版本中install4j搜索jre的选项?是这样,还是我还遗漏了什么?感谢
inst_jre.cfg
包含安装程序运行时使用的实际jre,如果首选jre不同,则编写
pref_jre.cfg
。这条路永远不会被搜索。您可以通过将参数
/create-i4j-log
传递给失败的启动器来调试搜索序列。