すでに試しました: macOS Sierra、Xcode 8でコード署名エラー /
CodeSign /Users/gururajtallur/Library/Developer/Xcode/DerivedData/Flow-bkqjkvtmvjovpyepfjeyqmjpintj/Build/Products/Debug-iphoneos/Super\ Flow\ Flip.app
cd "/Volumes/Development/Project/Top Best Games/19. Lets Flow/35/let's FLOW - source/proj.ios_mac"
export CODESIGN_ALLOCATE=/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate
export PATH="/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"
Signing Identity: "iPhone Distribution: New Free Games (2CHN583K4J)"
Provisioning Profile: "Super Flow Flipp AppStore"
(c6c30d2a-1025-4a23-8d12-1863ff684a05)
/usr/bin/codesign --force --sign E48B98966150110E55EAA9B149F731901A41B37F --entitlements /Users/gururajtallur/Library/Developer/Xcode/DerivedData/Flow-bkqjkvtmvjovpyepfjeyqmjpintj/Build/Intermediates/Flow.build/Debug-iphoneos/Super\ Flow\ Flip.build/Super\ Flow\ Flip.app.xcent --timestamp=none /Users/gururajtallur/Library/Developer/Xcode/DerivedData/Flow-bkqjkvtmvjovpyepfjeyqmjpintj/Build/Products/Debug-iphoneos/Super\ Flow\ Flip.app
/Users/gururajtallur/Library/Developer/Xcode/DerivedData/Flow-bkqjkvtmvjovpyepfjeyqmjpintj/Build/Products/Debug-iphoneos/Super Flow Flip.app: resource fork, Finder information, or similar detritus not allowed
Command /usr/bin/codesign failed with exit code 1
Code Signセクションで、プロファイルと証明書を選択できるようにしましたが、それでもエラーが発生します。
この問題を解決するには?
解決策1:
アップルデベロッパウェブサイト上の問題に対する回答 ここ 。
ターミナルで以下のコマンドを実行します。最初のgotoプロジェクトのルートフォルダ
xattr -cr <path_to_app_bundle>
Xcodeを消去して再構築します。乾杯
解決策2:
この問題を解決するには、Finder情報を含むファイルを見つけます。
ターミナルで、プロジェクトルートディレクトリに移動して実行します。
ls -alR@ . > kundapura.txt
これにより、現在のディレクトリにkundapura.txtが作成されます。今com.Apple.FinderInfoを検索し、すべてのファイルのこの属性をクリアします。あなたはこれのようにそれをすることができます
xattr -c <filename>
例:xattr -c guru.png
すべてクリアすると、コード署名が機能します。 Xcodeを消去して再構築します。乾杯
解決策3: Mark McCorkle's Answerに触発された
ターミナルで、プロジェクトのルートディレクトリに移動し、1つずつコマンドを実行します
find . -type f -name '*.jpeg' -exec xattr -c {} \;
find . -type f -name '*.jpg' -exec xattr -c {} \;
find . -type f -name '*.png' -exec xattr -c {} \;
find . -type f -name '*.json' -exec xattr -c {} \;
Xcodeを消去して再構築します。完了しました。
エラーはあなたのイメージファイルの中の属性からです。これは私たちのグラフィックデザイナーが属性を持ったフォトショップから画像を保存していたためです。
これはあなたのpngファイルをすべて見つけてそれらの属性を削除する簡単なコマンドです。端末からプロジェクトのルートディレクトリでこれを実行します。清掃して再構築します。問題が解決しました。
find . -type f -name '*.png' -exec xattr -c {} \;
アプリのコード署名時にこのエラーが発生した場合
リソースフォーク、Finder情報、または同様のデトリタスは使用できませんコマンド/ usr/bin/codesignが終了コード1で失敗しました
プロジェクトのルートフォルダに移動して実行します。
find . | xargs -0 xattr -c
これにより、すべてのファイルの属性が消去されます。
Sierraでは、署名されたバンドルに含めることができるものに関する規則が厳しくなり、リソースフォークはもう許可されません。 AppleScriptは情報をリソースフォークに永久に保存してきましたが、その情報は長い間使われていませんでした。 Sierraでは、スクリプトを保存すると、このリソースフォーク情報は保存されなくなります。
つまり、Sierraより前のバージョンで最後に保存されたスクリプトを共同署名することはできません。 Sierraにサインインするには、Sierraに保存する必要があります。
影響を受ける可能性が高いのは、他のスクリプトを自分のスクリプト内にバンドルしている人です(cordova?)。すべての埋め込みスクリプトがSierraの下で保存されるまで、彼らはコンテナスクリプトに署名することはできません。
更新:
これもうまくいくようです:
xattr -rc .
不十分な権限エラーがある場合は、Sudoを追加してみてください。Sudo xattr -rc .
この問題に対する公式のAppleの回答は テクニカルQ&A QA1940 にあります。
これは、iOS 10、macOS Sierra、watchOS 3、およびtvOS 10で導入されたセキュリティ強化の変更です。
コード署名によって、アプリケーションバンドル内のファイルがリソースフォークやFinder情報を含む拡張属性を持つことができなくなりました。
どのファイルがこのエラーの原因であるかを確認するには、ターミナルで次のコマンドを実行してください。
xattr -lr <path_to_app_bundle>
Xattrコマンドを使用して、アプリケーションバンドルからすべての拡張属性を削除することもできます。
xattr -cr <path_to_app_bundle>
<path_to_app_bundle>
はあなたのXcodeプロジェクトのディレクトリに置き換えることができます。例えば~/Development/MyProject
ソースファイルの属性を処理する最も簡単な方法は、Xcodeがアーカイブをcodeignを実行する前に消去することです。これをする:
スクリプトに次のように入力します。
xattr -cr〜/ライブラリ/ Developer/Xcode/DerivedData ||エコークリア
今あなたがあなたの目標を構築するとき、それは壊れたコードサインを持っているであろうどんな属性でもクリアします。この段階でクリアすることで、あなたのソースコード/プロジェクトディレクトリを変更する必要はありません。
スクリプトの "|| echo Clear"部分は、xattrエラーが発生してもプロジェクトのビルドが続行されることを保証します。
この方法は、コードリポジトリでDropBoxなどの属性を追加するプログラムを使用する場合に適しています。ソースプロジェクトは変更されず、構築されたアーカイブのみが変更されるためです。
DerivedDataディレクトリと一致するようにパスを変更する必要があるかもしれません - このパスはcodesignエラーの隣に表示されます。
次のコマンドを使いました。端末ウィンドウを使用してください。プロジェクトに移動して以下を実行します。
xattr -rc .
ファイルの消去についてはすべて問題ありませんが、複数のプロジェクトでは面倒です。
グラフィックアプリは、(古いバージョンのphotoshopのように)外部ファイルに古い方法で追加情報(現在はメタデータと呼んでいます..)を書くか、または古いOSXから来たようなファイルです。
たとえば、フォルダを解凍すると、 "com.Apple.ResourceFork"および "com.Apple.FinderInfo"になります。
Xcode 8はそれをビルドに追加することを拒否します( "git --add。"を使ってプロジェクトに追加したのかもしれません)。端末で再帰的に見つけて削除することはできますが、面倒なこともあります。
私はそれを削除するために小さな無料のユーティリティを書いた..それが役立つことを願っています..
https://iTunes.Apple.com/us/app/cleandetritus/id1161108431?ls=1&mt=12
簡単な解決策: -
私のやり方 [私のために働いて]
ステップ1: - このフォルダに移動します - あなたのFinderプレスオプションから移動 - >フォルダに移動
次に、この例のようにプロジェクトのパスを入力します。 - Library/Developer/Xcode/DerivedData/yourprojectname/Build/Products/Debug-iphoneos
これで、利用可能なファイルのリストがポップアップ表示されたウィンドウが表示されます。そこに、yourApp.appファイルがあります[ステップ2を待つだけで何もしないでください]。
ステップ2: - 新しいターミナルを開いてcdと入力し、ステップ1 yourApp.appをターミナルにドラッグするだけで、アプリのパスが表示されます。次にenterボタンを押します。
ステップ3: - 今、このコマンドを入力してください**
xattr -rc.
"。"(ドット)をお見逃しなく。エンターボタンを押してください。
それはそれです、あなたのXcodeプロジェクトに行き、きれいにして再度実行してください。
----- bashの知識がないなどの理由で上記の解決策を適用できない場合。
SierraでiCloudドライブを有効にするとすぐに、この問題が発生しました。私のプロジェクトは、iCloudドライブと同期されたフォルダにありました。私はこれがそれらの追加の属性を追加するものであると思います。
一時的な解決策:
プロジェクトがあるフォルダのiCloudドライブを無効にします。
以下で説明するように、アプリバンドルフォルダを削除してアプリを再構築する必要があります。
私のアプリはと呼ばれています:
ターミナルウィンドウで、アプリケーションフォルダに移動します(例:cd/Users/username/Library/Developer/Xcode/DerivedData /)。
ターミナルウィンドウでアプリフォルダのコマンドを実行します。例:xattr -cr augment-flmbiciuyuwaomgdvhulunibwrms
クリーン>ビルド>実行.
これらを削除する「CleanDetritus」と呼ばれるMac Appstoreの無料アプリもあります。
この問題は昨日私に思いつきました。
(What's wrong)
Finderで手動でファイルを置き換えて画像リソースを更新しましたが、このコンパイルエラーで失敗しました。
(What's right)
この方法で画像を更新しないでください。その後、Xcodeで画像を「xcassets」にドラッグしました。これ以上エラーは表示されません。
問題は派生データにあります。派生データを消去してから、プロジェクトを消去してビルドしてください。 こちら リンクを確認してください。
git を使用している場合は、最も簡単な解決方法があります。試してください:
$ git stash
$ git stash pop
Gitはファイルのメタデータを保存しません、上記はそれをすべて取り除きます。
私も同じ問題に直面しています。Macbookを再起動するだけで解決します。
私の問題は、約1年前にcordovaを使用してアプリを作成したことですが、新しいバージョンのxcodeとは互換性がなかったので、単にcordova build ios
を使用したところ、再び機能しました。
Xattrコマンドがうまくいかない場合は、XCode 9のバグが原因である可能性があります。Xcodeから影響を受けるファイルを含むリソースフォルダー(私の場合は.xcassets)を削除してから再度追加してみましょう。 (xattr -lrコマンドで以前に影響を受けたファイルはどれですか?)
最善の解決策の1つは、端末タイプに移動するこれです
xattr -cr "Full path of your project"
あなたの右クリックのフルパスを見つけるためにXcodeプロジェクト - >情報を見る - >パスをコピーしてと置き換えてください。それから以下のコマンドを入力してください
xattr -cr "Full path of your project"
きれいにして造り終わった。
ターミナルを開いてこのコマンドを実行してください。
xattr -cr ".appファイルへのパス"