【发布时间】:2015-10-16 00:32:19
【问题描述】:
我正在使用xcodebuild 从工作区生成存档。我使用以下命令:
xcodebuild -workspace MyProject.xcworkspace -scheme "MyProject"
-destination generic/platform=iOS archive
-archivePath "../PathToArchive/MyProject.xcarchive
(为了便于阅读,我将其分隔为多行)
此命令生成MyProject.xcarchive。然而,它会生成一个通用“Xcode Archive”而不是“iOS App Archive”。这不能提交到 App Store。
如果我使用 Xcode.app 版本 7.0.1 (7A1001) 而不是 xcodebuild 归档完全相同的工作区和方案,那么我会得到一个可以提交到 App Store 的“iOS App Archive”。
检查这两个xcarchives 的内容显示主要区别在于捆绑的Info.plist 文件。 Xcode.app 生成的包含一个额外的ApplicationProperties dict,其中包含版本控制和签名详细信息。 xcodebuild 生成的那个在其 Info.plist 中缺少这些细节。
将Xcode.app 生成的Info.plist 复制到xcodebuild 生成的xcarchive 中“修复”存档,并可以提交到App Store。然而,这不是一个解决方案,因为这意味着我无法在命令行上构建。
注意,xcodebuild -version 打印:
Xcode 7.0.1
Build version 7A1001
编辑:有时xcodebuild 似乎会生成正确的iOS 应用存档,而不是通用存档。我不确定为什么会发生这种情况。不一致。
【问题讨论】:
-
如果您升级了,您可能需要完全清除 ctrl+alt+cmd+shift+k(我认为),并且您需要删除所有派生数据
-
@Jeef 感谢您的建议,但清理和删除派生数据仍会导致同样的问题
标签: ios xcode xcodebuild