Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Install4j 如何配置捆绑包JRE安装目录(在MacOS上)_Install4j - Fatal编程技术网

Install4j 如何配置捆绑包JRE安装目录(在MacOS上)

Install4j 如何配置捆绑包JRE安装目录(在MacOS上),install4j,Install4j,install4j可以轻松地将JRE与应用程序捆绑在一起。在Windows(和linux)上,JRE安装在(应用程序的)子目录JRE中。在MacOS上,它似乎位于.install4j/jre.bundle中 如何配置install4j将JRE放入JRE目录?它似乎是任何RCP基础应用程序的默认位置。如果该目录可以用于捆绑的JRE,那就太好了。JRE捆绑包的位置目前不可调整。但是,在“安装文件”操作运行后,您可以使用“移动文件和目录”操作将JRE移动到其他位置。那样的话,你得打电话 String

install4j可以轻松地将JRE与应用程序捆绑在一起。在Windows(和linux)上,JRE安装在(应用程序的)子目录JRE中。在MacOS上,它似乎位于.install4j/jre.bundle中


如何配置install4j将JRE放入JRE目录?它似乎是任何RCP基础应用程序的默认位置。如果该目录可以用于捆绑的JRE,那就太好了。

JRE捆绑包的位置目前不可调整。但是,在“安装文件”操作运行后,您可以使用“移动文件和目录”操作将JRE移动到其他位置。那样的话,你得打电话

String newJreHome = ...;
JVMSelector.setPreferredJVM(newJreHome);

这样,启动器和卸载程序将从新位置使用JRE。

如何知道应用程序是否正在使用重新定位的JRE?例如:除了install4j在安装运行时使用的捆绑jre之外,我还想将另一个jre(例如,使用另一个版本)解压缩到“java”或“jre xy”之类的文件夹中,并按照您提到的那样重新定位jre主页,以便我的应用程序使用它。它似乎没有效果,因为我的日志输出显示“java.home”仍然指向捆绑的jre。请检查文件.install4j\pref_jre.cfg当安装程序的捆绑jre是32位jre而解包的jre是64位jre时,是否会出现问题?其背景如下:安装程序应分析操作系统平台(x86或x64),然后切换/使用适合操作系统平台的jre。这是我的要求。因此,我尝试在64位操作系统平台(windows)上将jre重新定位到未打包的64位版本。如果位与生成的启动器不匹配,则启动器将忽略.install4j\pref_jre.cfg中的jre。您可以从命令行用参数/create-i4j-log启动启动程序来调试Java搜索序列。谢谢你的确认。我将寻找另一种解决方案/解决方法,可能是将两个安装程序捆绑在32位“meta”安装程序或类似的东西中。