xcodebuild归档所有的目标,而不是一个

我需要从我的xcodeproj存档一个特定的计划。 要做到这一点,我跑

 xcodebuild archive \ -scheme $SCHEME \ -target $TARGET \ -archivePath $ARCHIVE_PATH 

虽然我明确地定义了一个scheme和目标,但是由此产生的xcarchive包含了目标以及后续的IPA导出呼叫

 error: the archive at path '<path>.xcarchive' is not a single-bundle archive ** EXPORT FAILED ** 

为什么xcodebuild生成一个包含多个包的文件?

这是项目计划的一个问题。 我通过复制原来的scheme而不是添加新的scheme来创build新的scheme。 最终的scheme然后在构build部分列出2个目标,而不是一个(只有天知道为什么),Xcode不会让我删除另一个目标。

一旦我删除所有的scheme,并从头开始创build它们,一切都很好。

发生这种情况的另一个场景是,当您的子项目(目标依赖项)在构build设置中将Skip Install设置为No时。

要find哪个子项目,请检查存档内的内容。 产品文件夹应该只有一个产品。

在我的情况下,一个子项目是一个dynamic库,并被加载到/<path to archive>/Products/usr/lib/<library>path下的存档中。