2017-11-09 5 views
0

XCodeが自動でXCode 9.1にアップグレードされてから今日まではをしばらく使用していました。私は私のプロジェクトを開き、私は次のエラーを取得します。Swift 4.0でコンパイルされたモジュールはSwift 3.2.2でインポートできません - XCode 9.1以降

スウィフト4.0でコンパイルされたモジュールは、スウィフト3.2.2にインポートすることはできません:/ユーザー/ユーザー名/ MyAppに/ MyAppにウォッチアプリの拡張/ RealmSwift.framework /モジュール/ RealmSwift.swiftmodule/i386.swiftmodule

エラーはimport RealmSwiftを指します

Realm version swift-4.0にアップグレードしようとしましたが、同じエラーが発生しています。私がアップグレードしたのは、私のプロジェクトからRealmフレームワークを削除し、バージョンのswift-4.0を追加することでした。

FYI - 私は自分のプロジェクトでSwift 4を使用していません。

何が間違っている可能性がありますか?

+0

プロジェクト( 'Cmd + K')をクリーンアップしてもう一度ビルドしてください。 – EmilioPelaez

答えて

2

エラーメッセージは、Xcode 9.1がSwift 3.2.2を使用しているのに対して、構築しているRealm SwiftフレームワークはSwift 4.0(Xcode 9.0を使用)用に構築されていることを示しています。 Realmフレームワークは、使用しているSwiftのバージョン用に構築されたバージョンに更新する必要があります。これはRealmの最新リリースで見つけることができます。

+1

@ bdashなぜ、同じ「レルムバージョン」を使用していたのですか? –

+1

Xcode 9.0にはSwift 3.2とSwift 4.0が付属しています。 Xcode 9.1にはSwift 3.2.2とSwift 4.0.2が付属していますが、Xcode 9.0のバージョンとはバイナリ互換ではありません。 – bdash

+0

@ bdash意味があります。 'swift-3.2.2'へのアップグレードは、この問題を修正しました。ありがとうございます。クイック質問。今、私は手動でRealmをインストール/アップグレードしていますが、この種の問題を避けるために、Cocoapodsを使って 'Realm'をインストールする方がよいでしょうか? –

関連する問題