你能从命令行而不是在Xcode中创建Mac .app发行版吗?

时间:2012-12-10 00:52:01

标签: xcode macos build

是否可以在不使用Xcode Organizer的情况下从.xcarchive包转到.app包?我想创建一个自动构建并获取我可以分发的最终.app文件。将xcodebuild与归档目标一起使用对于获取.xcarchive文件非常有用,但不适用于最终应用程序。

使用iOS SDK,您可以使用xAppun的PackageApplication工具,但这似乎不适用于OS X SDK。

我也想这样做,所以我希望从分发流程中获得更多的诊断,这对于我来说已经失败了,因为臭名昭着的100021操作系统错误代码。

3 个答案:

答案 0 :(得分:4)

您是否查看过.xcarchive软件包?它只是一个文件夹。您的.app目标应位于Products子文件夹中。

在Finder中,右键单击存档,然后单击显示包内容。在终端中,使用cd

答案 1 :(得分:2)

xcodebuild命令中尝试 -exportArchive 标志:

xcodebuild -exportArchive -exportFormat app -archivePath <path to .xcarchive> -exportPath "My App.app" -exportSigningIdentity "Developer ID Application: My Software Company"

此命令出现在Xcode 5.0.1中。有关可选参数的更多详细信息,请参见手册页。此示例导出Developer ID signed application。

答案 2 :(得分:1)

以下是我发现的关于这个问题的内容:

  • 如前所述,xcodebuild的归档构建对于获取.xcarchive很有用,但似乎没有一种实际的方法可以从命令行执行验证或分发命令。我希望这最终证明是假的。

  • 我能够通过删除嵌入式框架目录中的嵌入式符号链接来欺骗验证工具。这是有效的,但在与Apple支持人员讨论之后,事实证明这是欺骗工具而不是实际产生有效结果。

  • Apple支持称,如果嵌入式框架中的某个.plist文件无效,他们会看到此错误代码。事实证明,在我的例子中,我有3个嵌入式框架,其中1个有一个空的.plist文件,可能来自我手工构建项目。修好之后,构建将继续愉快。