私のプロジェクトには依存関係giphy4j
を追加しようとしていますが、この依存関係はjunit 4.8.1
ですが、私のプロジェクトでは最新のjunit 4.12
が使用されています。矛盾する依存関係 - アンドロイドスタジオ
build.gradle(モジュール:アプリ):
androidTestCompile 'junit:junit:4.12'
compile 'at.mukprojects:giphy4j:1.0.1'
この構成では、私にGradleの同期にエラーを与えています。
androidTestCompile
をcompile
に変更すると、その逆の場合も同じです。私はこの点を得ていない。私は依存関係のものを掘り下げます。compile
、apk
、TestCompile
などですが、適切なアイデアを得ることができませんでした(私は新入生です)。そして、この相反するエラーもまた分かりません。
ポイント1:junit(apkと一緒にリリースする)をコンパイルするのは間違っていますか?新しいプロジェクトを作成すると、デフォルトでjunit 4.12
が設定されます。
ポイント2:私は./gradlew app:androiddependencies
を実行したときにそれはrelease configuration
に表示されないbecuase androidTestCompile
と私のサードパーティ製の依存性を設定する必要はありません。
./gradlew app:androiddependencies output
エラー:エラー:依存性の競合 'のJUnit:JUnitの' プロジェクト内の ':アプリ'。 app(4.8.1)とテストアプリ(4.12)の解決されたバージョンが異なります。詳細については、http://g.co/androidstudio/app-test-app-conflictを参照してください。
なぜ、他の依存関係からjunitを除外しないのですか? –
それで、グラデルはジュニットを2回含んでいますか? ライブラリが 'junit 4.8.1'に依存していると仮定しました。しかし、私のプロジェクトは '4.12'バージョンを使用しているため、矛盾しています。 –
それは誤りが言うことです、はい。しかし、テストの依存関係を実際にコンパイルしない限り、なぜエラーが出るのかは明らかではありません。 –