web-dev-qa-db-ja.com

Xcode 8は「コマンド/ usr / bin / codesignが終了コード1で失敗しました」をアーカイブできません

MacOS SierraのXcode 8に深刻な問題があります。アプリをビルドしようとすると、次の問題が発生します。

CodeSign /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Products/Debug-iphonesimulator/MyApp.app
cd /Users/me/Desktop/MyAppFolder1/MyAppFolder2/MyAppxcode
export CODESIGN_ALLOCATE=/Users/me/Downloads/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate
export PATH="/Users/me/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Users/me/Downloads/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"

Signing Identity:     "-"

/usr/bin/codesign --force --sign - --timestamp=none /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Products/Debug-iphonesimulator/MyApp.app

/Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Products/Debug-iphonesimulator/MyApp.app: resource fork, Finder information, or similar detritus not allowed
Command /usr/bin/codesign failed with exit code 1

その後、私は https://forums.developer.Apple.com/thread/48905 を以下のように端末で実行しました。しかし、一度クリーニングすると、問題が再発します。

cd /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Products/Debug-iphonesimulator/MyApp

ls -al@ *

xattr -c *

このソリューションは、次の問題があるアーカイブでは機能しません。それに対する解決策はありますか?

CodeSign /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Intermediates/ArchiveIntermediates/MyApp/InstallationBuildProductsLocation/Applications/MyApp.app
cd /Users/me/Desktop/MyAppFolder1/MyAppFolder2/MyAppxcode
export CODESIGN_ALLOCATE=/Users/me/Downloads/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate
export PATH="/Users/me/Downloads/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Users/me/Downloads/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"

Signing Identity:     "iPhone Developer: My Name (**********)"
Provisioning Profile: "iOS Team Provisioning Profile: com.**********.*********"
                  (********-****-****-****-************)

/usr/bin/codesign --force --sign **************************************** --entitlements /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Intermediates/ArchiveIntermediates/MyApp/IntermediateBuildFilesPath/MyApp.build/Release-iphoneos/MyApp.build/MyApp.app.xcent --timestamp=none /Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Intermediates/ArchiveIntermediates/MyApp/InstallationBuildProductsLocation/Applications/MyApp.app

/Users/me/Library/Developer/Xcode/DerivedData/MyApp-gnoiiwnelmxzdidnijaswisrwdqe/Build/Intermediates/ArchiveIntermediates/MyApp/InstallationBuildProductsLocation/Applications/MyApp.app: resource fork, Finder information, or similar detritus not allowed
Command /usr/bin/codesign failed with exit code 1
45
Kee

このソリューションはAppleフォーラムで見つけました

cd ~/Library/Developer/Xcode/DerivedData
xattr -rc .

または

xattr -rc ~/Library/Developer/Xcode/DerivedData
109
DevManny

解決策1:

Mark McCorkleが答えたようなファイル固有のbashコマンドを試すことができます。

ターミナルで、プロジェクトのルートディレクトリに移動し、1つずつコマンドを実行します

  find . -type f -name '*.jpeg' -exec xattr -c {} \;
  find . -type f -name '*.png' -exec xattr -c {} \;
  find . -type f -name '*.tif' -exec xattr -c {} \;

Xcodeをクリーンにして再ビルドします。できた.

解決策2:

Finder情報を保持するファイルを見つけることにより、この問題を修正できます。

ターミナルで、プロジェクトのルートディレクトリに移動して実行します

ls -alR@ . > kundapura.txt

これにより、現在のディレクトリにkundapura.txtが作成されます。次に、com.Apple.FinderInfoを検索し、すべてのファイルのこの属性をクリアします。このようにできます

xattr -c <filename>
Example: xattr -c guru.png

すべてをクリアすると、コードをコーディングできます。乾杯

21
Sunil aruru

私のためにこれを働いた:

cd ~/Library/Developer/Xcode/DerivedData
xattr -dr com.Apple.FinderInfo *

そして、再構築

12
Gianluca

これには、より永続的な修正があります。 DerivedDataの属性の修正は機能しますが、問題は再発し続けます。あなたがする必要があるのは、「リソースフォーク、Finder情報、または許可されていない同様の問題」を取得したときに表示されるディレクトリに移動することです。次に実行...

xattr -lr MyAppName.App

その後、削除する必要のある属性を持つリソースファイルを確認できます。ただし、.Appファイルからそれらを削除しないでください。プロジェクト内の元のファイルを見つけ、それらを含むディレクトリを開いて実行してください...

xattr -rc。

これにより、元のファイルが修正されます。再構築は正常に機能するはずです。また、アーカイブ用に適切に再構築する必要があります。

9
raeldor

これは、おそらくmacOS Sierra(macOS Sierraにアップグレードしてから使用を開始したため)が原因で、ファイルシステムに追加の属性を持つリソースファイルが原因です。

DerivedDataフォルダー全体でxattr -c *を実行してみてください( https://forums.developer.Apple.com/message/178039#178039 の回答に記載されているとおり)。

cd ~/Library/Developer/Xcode/DerivedData
xattr -c *

ビルドフォルダーの属性のみを削除すると、デバッグ時の問題が修正されました。 DerivedDataフォルダ全体の属性を削除すると、アーカイブの問題も修正されました。他の結果を引き起こす可能性があることに注意してください(非常に可能性は低いですが)、DerivedDataフォルダーはいつでも削除でき、何かが壊れた場合に再生成されます。

また、まだ失敗する場合は、コマンドの実行後にプロジェクトをクリーンアップする(notビルドフォルダー)ことをお勧めします。

6
Can Poyrazoğlu

CocoaPodsバンドルの1つのファイルでこの問題が発生しました。 CocoaPodsを最新バージョンに更新して実行しました:

pod install

その後、問題はなくなりました。

4
Andrew Romanov

私の場合、問題はプロビジョニングプロファイルとアカウントにあり、次の手順を実行することで修正しました。

  1. Xcodeの設定->アカウント->既に追加されているアカウントを削除して、再度追加します
  2. 新しいプロビジョニングプロファイルを生成し、Xcodeにインストールします
  3. プロジェクトをきれいにして再構築する
3
Spydy

興味があるかもしれないので、回答を表示したい(このエラーで多くの時間を無駄にした)

Error screenshot

以前の回答(スコアが高い)はどれも役に立たなかった。

それらは正しいかもしれませんが、私の問題を解決していません。

原点:

iOSアプリケーションに新しいターゲットを追加しました:iMessage

アセットにpng画像を追加したとき。 xcassets、エラーが発生しました。

解決:

「Apple Preview App」でPNG画像のコピーを作成し、アルファのチェックを外します。

Preview App screenshot

エラーメッセージが消えます。

Preview App screenshot

2
Markus

修正したり、正しいコード署名を行ったりした場合でも、サードパーティのパッケージに問題が潜む可能性があります

ビルドエラーを詳細に確認すると、エラーメッセージにサードパーティライブラリの名前が表示される場合があります。

この場合、サードパーティのライブラリを再度ビルドする必要があります。たとえば、私の場合、carthage updateを介して更新すると、ビルドが正常に成功しました。

0
Blaszard

私の場合、

に行く

  • Xcode設定

  • 場所

  • [プロジェクトパス]矢印をクリックします

  • DerivedDataフォルダーでプロジェクト名を検索します

  • プロジェクトフォルダを選択し、右クリックしてゴミ箱に移動します

できた!

0

MacOS Sierra 10.12.3、Xcode 8.2でこのエラーが発生しました。 DerivedDataの修正はうまくいきませんでした。

期限切れのApple Worldwide Developer Relations Certificate Authorityの証明書を削除した後Keychain Accessエラーはなくなりました。

0
Lars Behnke