どうやらプロジェクトをXcode 9ベータ版でビルドできたようですが、今はエラーが発生するだけです
Swift 4.0でコンパイルされたモジュールは、Swift 3.1
Xcode 8でプロジェクトを実行すると、私の場合のモジュールはAlamofireです。 Xcodeを再起動しようとしましたが、この問題を解決する方法はありませんか?
次の2つのオプションがあります。Clean
プロジェクトを選択し、re-build
ソリューションを確認し、それが機能するかどうかを確認します。
それでも動作せず、同じエラーメッセージが表示される場合は、次の手順を実行してください。
podfile
を開き、Alamofire
を削除しますpod update
Alamofire
にpodfile
を再追加しますpod update
clean
して実行しますここでも同じ問題がありますが、カルタゴを使用しています。そして、ここに答えがあります:
rm -rf ~/Library/Caches/org.carthage.CarthageKit/DerivedData
Carthage
フォルダーを削除しますcarthage update --platform iOS
そしてほら!
私は同じ問題を抱えていて、ビルドフォルダをきれいにした:
Command+Option+Shift+K
または
Product
-> Option+Clean
派生データを削除するだけでうまくいきました。Podを再度インストールする必要はありません
ポッドファイルの最後に次の行を追加します。
post_install do |installer|
print "Setting the default Swift_VERSION to 4.0\n"
installer.pods_project.build_configurations.each do |config|
config.build_settings['Swift_VERSION'] = '4.0'
end
installer.pods_project.targets.each do |target|
if ['SomeTarget-iOS', 'SomeTarget-watchOS'].include? "#{target}"
print "Setting #{target}'s Swift_VERSION to 3.0\n"
target.build_configurations.each do |config|
config.build_settings['Swift_VERSION'] = '3.0'
end
else
print "Setting #{target}'s Swift_VERSION to Undefined (Xcode will automatically resolve)\n"
target.build_configurations.each do |config|
config.build_settings.delete('Swift_VERSION')
end
end
end
end
この問題は、依存関係がCarthageによって管理されているプロジェクトで発生しました。私の場合、コマンドラインツールをxcodeに設定していません(xcodebuild -versionに入力すると、設定するかどうかがわかります)。したがって、最初のステップはXCode-> Preference-> Locationsに進みます。コマンドラインツールとして使用するXcodeを選択します。次に、上記の@Domswareの手順に従って、使用するすべてのフレームワークを再構築します。
==============================================
ここでも同じ問題がありますが、カルタゴを使用しています。そして、ここに答えがあります:
rm -rf ~/Library/Caches/org.carthage.CarthageKit/DerivedData
delete the Carthage folder for the project
Update Carthage: carthage update --platform iOS
==============================================
次に、「リンクされたフレームワークとライブラリ」の下の古いリンクを削除し、プロジェクトの下の/ Carthageフォルダーからすべてのフレームワークを「リンクされたフレームワークとライブラリ」にドラッグすることを忘れないでください。
それからほら!
CocoaPodsを使用している人には、免責事項(CocoaPodsが依存関係マネージャーであるプロジェクトではこの問題に遭遇しなかった)と思われます。ソリューションはターミナルで次のコマンドを実行します。
$ pod deintegrate
$ pod clean
$ pod install
cocoaPodの「分解」および「クリーン」ツールのインストールが必要になる場合があります
$ Sudo gem install cocoapods-deintegrate cocoapods-clean
詳細については、投稿を参照してください プロジェクトからCocoaPodsを削除する方法?