我无法存档聚合目标。我的应用程序设置如下:
所有目标共享相同的核心文件集:启动Storyboard,AppDelegate,UIViewController子类,Storyboard,资产目录。它们都有唯一的info.plist文件。
添加聚合目标并将其构建完美。我也可以第一次存档没问题。只有在我尝试第二个存档后,才会在运行CopySwiftLibs
命令时出现错误:
*** error: Couldn't copy/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphoneos/libswiftCore.dylib to /Users/jal/Library/Developer/Xcode/DerivedData/MyApp-enstrypfbpojoqgbavkrccebdjsi/Build/Intermediates/ArchiveIntermediates/BuildAllEnterprise/BuildProductsPath/SwiftSupport/iphoneos/libswiftCore.dylib: A file with the name “libswiftCore.dylib” already exists.
它并不总是相同的dylib。有时它是libswiftDarwin.dylib
,有时它是libswiftUIKit.dylib
。我假设发生此问题是因为聚合中的一个目标将Swift库复制到Derived Data文件夹,并且构建脚本正在尝试为我的聚合中的后续目标复制重复的库。
我在清理构建文件夹/删除派生数据/重新启动Xcode或我的Mac方面取得了不同程度的成功。但即使我能够将目标正确归档一次,它也会第二次失败。
如何在存档我的聚合目标时阻止这种情况?