将 Cocoa 应用程序和命令行工具组合成一个 App Bundle
Posted
技术标签:
【中文标题】将 Cocoa 应用程序和命令行工具组合成一个 App Bundle【英文标题】:Combine Cocoa App and Commandline Tool into one App Bundle 【发布时间】:2014-07-28 09:30:38 【问题描述】:如何使用 XCode 将命令行工具和 Cocoa 应用程序组合成一个应用程序?
最后我需要将命令行工具(stdout 和 stderr)的输出显示到 NSTextBox。
【问题讨论】:
目前我手动将命令行工具复制到应用程序包中。有没有办法让这个 XCode 自动管理?这样应用程序的构建会将两者都添加到捆绑包中吗? 您还有另一个构建二进制文件的项目?或者它是一个静态二进制文件?你有一个副本包资源构建阶段? 是的。我目前有两个单独的项目。一个用于命令行工具(静态二进制),另一个包含 Cocoa 应用程序。 【参考方案1】:拖动二进制项目(或添加)作为主项目的依赖项。这意味着它将始终在主要项目之前构建。
接下来添加一个复制包资源构建阶段(或使用现有的)并将二进制产品从二进制项目中拖入。这会将生成的二进制从第一个构建复制到第二个构建创建的包中。
要运行二进制文件,您需要使用NSBundle
获取其路径,然后使用run it using NSTask
。
【讨论】:
以上是关于将 Cocoa 应用程序和命令行工具组合成一个 App Bundle的主要内容,如果未能解决你的问题,请参考以下文章