Swift
プロジェクトと次のポッドでCocoaPods v0.36
を使用しています:Alamofire
、CocoaLumberjack
、SwiftyJSON
。
開発者IDを使用するまではすべて順調でした。 CocoaPods
のいくつかの修正と更新の後、コンパイラはプロジェクトをコンパイルする問題を抱え始めましたが、プロジェクトはコンパイルされますが、実行時に次のエラーが表示されます。
dyld: Library not loaded: @rpath/Alamofire.framework/Versions/A/Alamofire
Referenced from: /Users/Ivan/Library/Developer/Xcode/DerivedData/myApp-bsxfcnwqpaxnzbhencwzteasshzf/Build/Products/Debug/myApp.app/Contents/MacOS/myApp
Reason: image not found
これに関連するさまざまな投稿を読みました。
しかし、問題を解決するものはないようです。
私が持っている唯一の手がかりは、3つのフレームワークが赤で表示されているため、生成/リンクされていないようです。
開発者IDを削除しましたが、問題はまだあります。誰もがアイデアを持っていますか?
私がやったステップの下で解決されました:
dyldライブラリが@ rpath/frameworkにロードされていません
フレームワークがtarget-> general-> embeded binaries and linked framework and librariesセクションの下に表示されていることを確認してください
そうでない場合は、+記号をクリックして追加し、フレームワークのみを追加します
できた!
ここで職場でこの問題に遭遇し、ある人のプロジェクトが実行され、他の人はこの奇妙なエラーを受け取りました。
Xcodeプロジェクトのターゲットで、Build Phases
の下でCocoapodsが生成するはずの実行スクリプトの一部が欠落しているときに、いくつかの比較を行い、エラーが生成されていることに気付きました。
プロジェクトをチェックして、これら3つのスクリプトが存在することを確認してください
Check Pods Manifest.lock Embed Pods Frameworks Copy Pods Resources
そうでない場合は、スクリーンショットを添付して、手動で追加できるようにします
これを試して:
Target
を見つけます-> Build Phases
-> Add New Copy Files Phase
-> Choose Destination Option
、Frameworks
-> add
AFNetworking.framework->✓をクリックします。
XCodeで有効な証明書とプロビジョニングプロファイルが設定されていることを確認してください!
他のものはどれも私にとってはうまくいきませんでした。結局、私にとってそれを解決したのは、ポッドファイルの変更でした。私はそれが起こったターゲットのコードを変更しました:
target 'UITests' do
inherit! :search_paths
end
ポッドをインストールすると、ようやく機能しました。
ビルドフェーズのコピーフレームワークで「インストール時にのみコピー」のチェックを外すだけで、この問題を解決しました。