【发布时间】:2015-11-14 19:01:39
【问题描述】:
我有一个在 Linux 和 MAC 上的 Mono 上运行的 .NET 软件。该软件在 OSX Lion 下的 Mono 3.6.0 上使用 Macpack 打包为 .app,并使用 PackageMaker 创建了一个安装程序。它在所有新版本的 OSX 上运行良好,直到 El Capitan 触发以下错误:
LSOpenURLsWithRole() failed with error -10810 for the file .../Applications/MyApp.app
我已经在 El Capitan 上移动了开发文件,并设法使用 Mono 4.0.4.4 中的 Macpack 将其打包。使用时似乎没有显示该错误
open -a MyApp.app
现在唯一的问题是它不会在双击时启动。该软件由安装程序安装在 /Applications 中。它可以从控制台使用 open 命令启动,但不能双击。有没有办法通过模拟控制台的双击来查看错误或其他内容?
PS。同样在 El Capitan 上,唯一可行的 Mono 框架是最新的 4.0.4.4 或为 El Capitan 设计的 4.2.1。二进制文件的新位置在 /usr/local/bin 而不是 /usr/bin 中,并且仅当 /usr/local/bin 在安装之前存在时才有效,否则将无法识别单声道命令。
谢谢
【问题讨论】:
-
回复:单声道版本;没错,El Capitan 支持 4.0.4.4 或 4.2.1 版本。从 /usr/bin 到 /usr/local/bin 的移动是 El Capitan 的要求,因为没有第三方应该修改 /usr/bin 中的任何内容。 /usr/local/bin 在全新安装之前不存在的问题是一个已知问题。
-
至于您的启动问题,您查看过 Console.app 吗?双击时那里报告了任何错误?可能是权限问题,应用程序包中的启动器二进制文件是否具有正确的权限,应用程序包本身是否标记为可执行文件?