[英]install4j - jre.bundle is not updated
I'm using install4j 5.1.15 and I have installer for Mac OS and Windows 64-bit with bundled JRE 7. Installation/Update of my app works without problems with this installer.我正在使用 install4j 5.1.15 并且我有 Mac OS 和 Windows 64 位的安装程序,捆绑了 JRE 7。我的应用程序的安装/更新在这个安装程序上没有问题。
Now I need to upgrade bundled JRE (installed inside /Applications/MyApp/.install4j/jre.bundle
) from 7 to 8. I built new installer with JRE 8 (and with checked option Update bundled JRE
in the configuration of my update action).现在我需要将捆绑的 JRE(安装在
/Applications/MyApp/.install4j/jre.bundle
)从 7 升级到 8。我使用 JRE 8 构建了新的安装程序(并在我的更新操作的配置中选中了Update bundled JRE
选项) .
Problem: JRE 8 is installed when I do a clean installation, but when I'm trying to update existing installation then existing JRE 7 is not updated to JRE 8. Other files are updated correctly.问题:当我进行全新安装时会安装 JRE 8,但是当我尝试更新现有安装时,现有 JRE 7 未更新为 JRE 8。其他文件已正确更新。 The same behaviour is on Mac OS and also Windows 64-bit.
在 Mac OS 和 Windows 64 位上也有相同的行为。 Also I don't see any warnings/errors in a log file.
此外,我在日志文件中没有看到任何警告/错误。 It is a bug or I missed something?
这是一个错误还是我错过了什么?
EDIT : There is no message about updating JRE files in installation.log
, even when updateBundledJre: true
:编辑:即使
updateBundledJre: true
,也没有关于在installation.log
更新 JRE 文件的消息:
[INFO] com.install4j.runtime.beans.actions.InstallFilesAction [ID 767]: Execute action
Property sizeCalculatorScript: null
Property installRuntime: false
Property saveDownloadedFiles: false
Property updateBundledJre: true
Property checkFreeSpace: true
Property validateApplicationId: false
Property delay: false
Property triggerReboot: true
Property directoryResolverScript: null
Property fileFilterScript: null
Property showFileNames: true
Property rollbackSupported: true
Install file: /Applications/MyApp/my-file.tmp; size: 245 bytes; exists: true
Execute action successful after 5650 ms
I tried to change value of installRuntime
property to true
and it resolved my problem.我试图将
installRuntime
属性的值更改为true
并解决了我的问题。 During update process current JRE is moved to folder /Applications/MyApp/.install4j/__i4j_jre_backup
and new JRE is installed correctly.在更新过程中,当前 JRE 移动到文件夹
/Applications/MyApp/.install4j/__i4j_jre_backup
并正确安装新的 JRE。 It works for Mac OS and also Windows now.它现在适用于 Mac OS 和 Windows。
installation.log
: installation.log
:
[INFO] com.install4j.runtime.beans.actions.InstallFilesAction [ID 767]: Execute action
Property sizeCalculatorScript: null
Property installRuntime: true
Property saveDownloadedFiles: false
Property updateBundledJre: true
Property checkFreeSpace: true
Property validateApplicationId: false
Property delay: false
Property triggerReboot: true
Property directoryResolverScript: null
Property fileFilterScript: null
Property showFileNames: true
Property rollbackSupported: true
Install file:
Install file: /Applications/MyApp/my-file.tmp; size: 245 bytes; exists: true
Install file: /Applications/MyApp/.install4j/jre.bundle/Contents/Home/jre/bin/java; size: 103632 bytes; exists: false
File options set to: [fileTime: Wed Jul 29 12:34:46 CEST 2015, mode: 644, overwriteMode: Always ask except for update, shared: false, uninstallMode: If created, but not for update, delayIfNecessary: false]
...
Execute action successful after 12345 ms
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.