我们有一个OS X应用程序,我们通过自己的网站分发,它捆绑在一个首选项窗格中,并附带3个守护进程。从10.7.4开始,其中一个守护进程不再运行,OS X说这个:
YZ无法打开。您应该将其移至废纸篓。
控制台对我不是很有帮助,但是,提供此错误消息:
23.06.12 18:22:15,284 com.apple.launchd.peruser.501:
([0x0-0x176176].com.bananaglue.control.helper[1902])
Exited: Killed: 9
OS X 10.8上相同。我们没有改变任何东西,之前它曾经没有错误地运行。
任何提示如何解决该问题?
答案 0 :(得分:8)
检查以下说明:
该应用的授权已被撤销。虽然此应用程序由已识别的开发人员签名,但此应用程序的证书已被撤销。它可能有问题。该应用无法打开。
来自Fuel Collective的Krystof Vasa引用:
Apple出于10.7的Gate Keeper功能已经在10.7.4中出现了一些(我未知)的原因。 Gate Keeper应该允许您阻止非AppStore或非签名应用程序启动。 Gate Keeper 设置位于系统偏好设置>安全与安全隐私 - 确保将其设置为任何地方。如果这也没有帮助,这里有一个如何禁用Gate Keeper的指南,无论如何都不应该在10.7.4中运行。
通过运行以下命令禁用GateKeeper:
sudo spctl --master-disable
也许您可以联系Krystof Vasa,询问他们是如何解决问题的。
答案 1 :(得分:4)
有一把较少的"大锤"解决这个问题的方法。我今天遇到了这个问题,它发生的原因是两件事的结合:在应用程序包上设置了隔离扩展属性,签名被打破,输入:
codesign -vv <app bundle>
结果:
<app bundle>: code has no resources but signature indicates they must be present
您可以通过在终端中键入ls -la @来查看扩展属性。它会告诉你&#34; com.apple.quarantine&#34;在文件上。
您可以使用以下终端命令删除所有扩展文件属性,而不是禁用Gatekeeper:
xattr -c <app bundle>
我正在谷歌上搜索,看看我是否能够确切地知道签名是如何被破坏所以我可以解决它(我是制造这个东西的公司的新开发人员)并遇到了这个问题。
完全禁用Gatekeeper不是我推荐的。当Gatekeeper向您发出警告时,您会获得有关它的更多信息,并且可能会使您无法意外地运行您不想运行的内容。