2016-10-29 5 views
1

私のプロジェクトは主にObjective-Cで書かれており、Realmを使っています。 レルムサポート付きのグラフライブラリを追加したいのですが、cocoapodsを使って追加しようとするとエラーが発生します。Objective-Cでレルムを使用してグラフを使用

Podfileは(いくつかの他のライブラリとの)ようになります

platform :ios, '9.0' 
use_frameworks! 

target 'MY_PROJECT' do 
pod 'Realm' 
pod 'Charts/Realm' 
end 

と私は取得していますエラーはこれです:

[!] Unable to satisfy the following requirements: 

- `Realm` required by `Podfile` 
- `Realm` required by `Podfile` 
- `Realm` required by `Podfile` 
- `Realm (= 2.0.0)` required by `Podfile.lock` 
- `Realm (= 0.97.0)` required by `RealmSwift (0.97.0)` 

私のプロジェクトが混合されているので、私は使用できません。 RealmSwift直接。 すべてのアイデア?

答えて

2

RealmとRealmSwiftが混在していないという問題があります。あなたはレルムを最初にインストールしていないようですが、その後、Podfileにチャートを追加してpod install、そうでしょうか?したがって、Podfile.lock(特定のバージョンのファイル固定ライブラリ)は、レルムを2.0.0に固定しましたが、Chartsには古いバージョンのRealmSwiftが必要です(RealmSwiftはRealmを暗黙的に使用しています)。それがエラーの原因です。

解決するには、pod updateを実行するか、Podfileからpod 'Realm'を削除するだけです。どちらの方法でもRealm 2.0を削除し、RealmとRealmSwift 1.1.0(1.1.0はChartが必要です)をインストールします。

Charts requres 1.1.0のため、より高いバージョンのRealmを使用することはできません。

1

前述のとおり、RealmおよびRealmSwiftの混合アプリケーションを使用する方法はありません。 docsから:

あなたはスウィフトから純粋にレルムを使用するために探している場合は、代わりにレルムスウィフトを使用して を検討すべきです。 Realm Objective-CとRealm Swift API は相互運用できず、それらを一緒に使用することはサポートされていません。

とにかく私のお勧めは、SwiftのRealm Cocoa(Objective-C)を使用しているため、データベースを使用するアプリケーションに大きな問題はありません。依存関係の両方をあなたのPodfileに混ぜてはいけません。 RealmSwiftではなくRealmのみを使用してください。

+0

私はRealmSwiftを直接使用するつもりはありませんが、おそらくチャートによって必要となるでしょう。質問を更新してPodfileを追加しました。 – ROC

+0

それは正しいです。 Podspecの 'Charts' 2.3.0を見てください。 RealmSwiftを必要とする依存関係があります:https://github.com/CocoaPods/Specs/blob/master/Specs/Charts/2.3.0/Charts.podspec.jsonこれはエラーの原因です。私が以前に言ったことは、ここで起こっています:Realm(Objective-C)とRealmSwiftライブラリは相互運用性がありません。 – Orlando

+0

私は参照してください。私はそれについて何かできることはありますか?または私はちょうど更新を待つべきですか? – ROC

関連する問題