我正在尝试在Mac上为我的应用程序构建一个安装包(有两个.app-s)。其中一个是GUI,另一个是代理(服务)。安装包必须在安装结束时运行脚本(这是我知道可以完成的唯一方法),以便代理将作为代理安装。还有一个.plist文件安装在/ Library / LaunchAgents中,但这就是PackageMaker自动执行的操作(即不需要脚本)。
问题是......我不能让脚本运行。我最后得到“安装失败”。 我不知道问题是什么。有人可以帮忙吗?
更多细节:
包含以下内容(不带引号):
“#!/ bin / sh的
sudo launchctl load /Library/LaunchAgents/com.MyCompany.MyService.plist“
(请注意com.Mycompany.MyService.plist已经存在 - 它将它安装在那里)。
P.S。在我尝试使其成功的一些尝试中,PackageMaker粉碎了。
有人可以帮忙吗?
答案 0 :(得分:2)
您可以查看安装日志。
当安装程序应用程序运行时,请转到窗口菜单,然后选择安装日志。这将打开一个单独的日志窗口。在此窗口中,从组合框中选择全部显示。您将能够看到脚本失败的原因。
答案 1 :(得分:0)
我自己也有过这样的经历。这就是我发现的。 为了使安装成功,你的sript必须明确地返回0(即“成功”)。 如果脚本中的命令结果不为0且您没有调用
exit 0
作为最后一个脚本,你的安装会告诉你它失败了。
如果您不使用脚本的返回值,并且您确定scrpit工作正常 - 只需在脚本的最后一行添加“退出0 ”。