install4j:从命令行(Windows和Linux)启动GUI模式时,显示URL操作失败,且没有错误消息

install4j:从命令行(Windows和Linux)启动GUI模式时,显示URL操作失败,且没有错误消息,install4j,Install4j,在安装程序的末尾,我们正在执行“showURL”操作,以在浏览器中启动我们的应用程序。但是,我们看到浏览器没有启动,并且向用户显示消息“启动浏览器时出错”(在没有权限的情况下运行时,不会显示错误消息,但浏览器也不会启动) 查看日志输出(使用-Dinstall4j.debug=true-Dinstall4j.logToStderr=true)没有异常或错误消息。事实上,它说行动成功完成了: [INFO]com.install4j.runtime.beans.actions.finish.Show

在安装程序的末尾,我们正在执行“showURL”操作,以在浏览器中启动我们的应用程序。但是,我们看到浏览器没有启动,并且向用户显示消息“启动浏览器时出错”(在没有权限的情况下运行时,不会显示错误消息,但浏览器也不会启动)

查看日志输出(使用
-Dinstall4j.debug=true-Dinstall4j.logToStderr=true
)没有异常或错误消息。事实上,它说行动成功完成了:


[INFO]com.install4j.runtime.beans.actions.finish.ShowURLAction[ID#####]执行操作
...
33607毫秒后执行操作成功

注意:时间超过了33秒,因为这是我单击对话框上的OK之前的时间。行动立即失败

另一个有趣的点是,该操作配置了失败策略“询问用户是否在失败时退出”,但是显示给用户的对话框只有一个“确定”按钮

我设法在Linux上复制了所有这些,但我们的一些用户在Windows中从命令行启动安装程序时也看到了类似的行为


有人知道此问题的原因吗?

这意味着您正在使用的JRE的
Desktop.isDesktopSupported()
Desktop.getDesktop().isSupported(Desktop.Action.BROWSE)
返回
false


至于操作没有失败,这是一个bug,它将在6.1.3中修复。您看到的错误消息直接显示为操作。失败策略是所有操作的通用机制,用于对操作是否失败作出反应。

这意味着您正在使用的JRE的
Desktop.isDesktopSupported()
Desktop.getDesktop().isSupported(Desktop.action.BROWSE)
返回
false


至于操作没有失败,这是一个bug,它将在6.1.3中修复。您看到的错误消息直接显示为操作。失败策略是所有操作的通用机制,可对操作是否失败作出反应。

感谢Ingo!一如既往地乐于助人!我也有同样的问题。但是,既然我的应用程序可以通过桌面启动浏览器/URL,为什么卸载程序不能?这似乎没有道理。谢谢你,英戈!一如既往地乐于助人!我也有同样的问题。但是,既然我的应用程序可以通过桌面启动浏览器/URL,为什么卸载程序不能?这似乎没有道理。