我正在无人值守模式下运行生成的安装程序(使用 -q 和 -splash“Title”),向用户显示进度。
在安装结束时,我想启动已安装的应用程序,因此我在 FinishedScreen 上添加了一个 ExecuteLauncherAction ,并带有预选的复选框(以启动应用程序)。但在无人值守模式下,应用程序不会启动。日志显示了这一点
[INFO] com.install4j.runtime.beans.screens.InstallationScreen [ID 6]: Rollback barrier reached
command: move 1 screens, executing actions, checking condition
[INFO] com.install4j.runtime.beans.screens.FinishedScreen [ID 10]: Show screen
Variable changed: executeLauncherAction=true[class java.lang.Boolean]
[INFO] com.install4j.runtime.beans.screens.FinishedScreen [ID 10]: command: finish
cleaning up
Finished
有没有办法强制安装程序在无人值守模式下执行启动程序?
最佳答案
当您将“执行启动器”操作添加到“完成”屏幕并用"is"回答“其他确认”问题时,install4j 会添加一个条件表达式
context.getBooleanVariable("executeLauncherAction") && (!context.isUnattended())
采取行动。您可以将“条件表达式”属性更改为
context.getBooleanVariable("executeLauncherAction")
也在无人值守模式下执行操作。
关于java - install4j 无人值守模式下的 ExecuteLauncherAction,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35723109/