我需要从xcodeproj
归档特定方案。为此,我运行
xcodebuild archive \
-scheme $SCHEME \
-target $TARGET \
-archivePath $ARCHIVE_PATH
虽然我明确定义了一个方案和目标,但生成的xcarchive
包含两个目标,后续的IPA导出调用会抱怨
error: the archive at path '<path>.xcarchive' is not a single-bundle archive
** EXPORT FAILED **
为什么xcodebuild
会生成包含多个捆绑包的存档?
答案 0 :(得分:6)
这是项目计划的一个问题。我通过复制原始方案而不是添加新方案来创建新方案。结果方案然后在构建部分中列出了2个目标而不是一个(只有上帝知道原因)并且Xcode不会让我删除其他目标。
一旦我删除了所有方案并从头开始创建它们,一切正常。
答案 1 :(得分:3)
当发生这种情况时,另一种情况是您的子项目(目标依赖项)在构建设置中将Skip Install
设置为No
。
要查找哪个子项目,请检查存档中的内容。 Products文件夹应该只有一个产品。
就我而言,子项目是一个动态库,并已添加到/<path to archive>/Products/usr/lib/<library>
路径下的存档中。