install4j:正在执行 bash 文件

install4j: Executing bash file

我正在尝试从 install4j6 运行 bash 文件。 install4j 确实尝试运行 bash 文件,但它只是 returns 安装结束时的错误。该错误非常普遍,没有代码参考或任何可以帮助我确定解决方案的信息 - 只是一条消息 "Error while executing file."

我唯一可以提供的是我如何在 install4j6 中设置它,因为我很确定这是我的问题。

bash文件定义在我的安装目录分布树的根目录下,命名为set_permissions.sh。为了消除权限的原因,文件权限模式设置为777(在install4j和文件系统上)。

我认为这个问题与我设置的 "working directory" 有关。我目前将其设置为“.”。有没有办法进一步调试?可能会得到一个关于它为什么不执行的实际错误?

好的,首先要检查几件事:

  • 确保您在安装文件步骤后运行正在处理批处理文件(您提到它位于安装的根目录)
  • 最好检查等待终止并为 return 代码设置一个变量。
  • 将 stderr 重定向到日志文件(以防万一)

至于工作目录,. 应该可以,但您可以将其更改为 ${installer:sys.installationDir} 以确保它引用用户选择的安装目录。您还可以将可执行文件设置为 ${installer:sys.installationDir}\set_permissions.sh

的形式

此外,请尝试 运行 您的 shell 脚本以确保其正常工作:)