2016-04-07 9 views
0

集計対象のアーカイブに問題があります。私のアプリはそのように設定されていますXcode:集計対象を1回のみアーカイブできます

  • MyApp.xcodeproj
    • App1の
    • App2の
    • App3起動
    • APP4
    • のApp1-エンタープライズ
    • App2のエンタープライズ
    • をApp3-Enterprise
    • 起動ストーリーボード、AppDelegate、のUIViewControllerのサブクラスで、ストーリーボード、資産:
    • APP4-エンタープライズ
    • BuildAllEnterprise(すべてのエンタープライズターゲットを構築するための集計対象)

ターゲットのすべてが同じファイルのコアセットを共有しますカタログ。彼らはすべてinfo.plistファイルを持っています。それは完璧に動作集計対象と建物を追加する

xcode1

xcode2

。また、初めて問題なくアーカイブすることもできます。私は2番目のアーカイブを試した後にのみ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. 

xcode3

それは常に同じdylibではありません。場合によってはlibswiftDarwin.dylib、それ以外の場合はlibswiftUIKit.dylibです。私はSwiftライブラリが集計の1つのターゲットによって派生データフォルダにコピーされているため、ビルドスクリプトが集計内の後続のターゲットの重複ライブラリをコピーしようとしているため、この問題が発生すると仮定します。

私はビルドフォルダのクリーニング/派生データの削除/ XcodeやMacの再起動に成功しました。しかし、目標を一度適切にアーカイブすることができたとしても、それは常に2回目に失敗します。

どのようにして私の集計対象をアーカイブするときにこれを防ぐことができますか?

答えて

1

最後にこれを認識しました。ビルドは、CopySwiftLibsフェーズで互いに実行していました。私の集計ターゲットスキームのビルド設定の下にある "並列化ビルド"のチェックを外すと、問題が修正されました。

xcode

関連する問題