API 22にアップグレードしてlibリビジョン22をサポートした後、次の警告が表示されます。
警告:依存関係「com.android.support:support-annotations」と競合しています。アプリ(22.0.0)とテストアプリ(21.0.3)の解決済みバージョンは異なります。
Gradle自体はより寛容ですが、Android Studioではそれほどではありません。
21.0.3で宣言された依存関係はありません... 21.0.3を使用する依存ライブラリの1つであり、Googleは残りのバッチで更新するのを忘れていますか?
build.gradle
余分なものを切り取った私の
android {
compileSdkVersion 22
buildToolsVersion '22'
defaultConfig {
applicationId "com.REDACTED.android"
minSdkVersion 14
targetSdkVersion 22
renderscriptSupportModeEnabled true
versionName '1.0.0'
versionCode 100
}
buildTypes {
release {
minifyEnabled true
zipAlignEnabled true
signingConfig signingConfigs.release
}
debug {
minifyEnabled false
zipAlignEnabled true
signingConfig signingConfigs.debug
}
}
dependencies {
provided 'org.projectlombok:lombok:1.16.2'
googleCompile 'com.google.android.gms:play-services-base:6.5.87'
compile 'com.android.support:support-v4:22.0.0'
compile 'com.android.support:appcompat-v7:22.0.0'
compile 'com.android.support:support-v13:22.0.0'
compile 'com.android.support:cardview-v7:22.0.0'
compile 'com.android.support:palette-v7:22.0.0'
compile 'com.android.support:support-annotations:22.0.0'
compile 'com.github.chrisbanes.photoview:library:1.2.3'
compile 'org.apache.commons:commons-lang3:3.3.2'
compile 'commons-io:commons-io:2.4'
compile 'commons-codec:commons-codec:1.10'
compile 'com.jakewharton:butterknife:6.1.0'
compile 'com.jakewharton:disklrucache:2.0.2'
compile 'com.squareup:otto:1.3.6'
compile 'com.squareup.picasso:picasso:2.5.0'
compile 'com.squareup.retrofit:retrofit:1.9.0'
compile 'com.squareup.okhttp:okhttp:2.2.0'
compile 'com.squareup.okhttp:okhttp-urlconnection:2.2.0'
compile 'com.squareup.okio:okio:1.2.0'
compile 'com.flaviofaria:kenburnsview:1.0.6'
compile 'com.edmodo:cropper:1.0.1'
compile 'com.getbase:floatingactionbutton:1.8.0'
compile 'com.nispok:snackbar:2.10.2'
compile 'com.github.ksoichiro:android-observablescrollview:1.5.0'
compile 'in.srain.cube:grid-view-with-header-footer:1.0.9'
compile 'de.hdodenhof:circleimageview:1.2.2'
compile fileTree(dir: 'libs', include: '*.jar')
// Test Only Dependencies
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.0'
androidTestCompile 'com.android.support.test:testing-support-lib:0.1'
androidTestCompile 'com.android.support.test.espresso:espresso-contrib:2.0'
}
更新:(ありがとうマーク)
エスプレッソコントリビュートのようです
+--- com.android.support.test:testing-support-lib:0.1 (*)
\--- com.android.support.test.espresso:espresso-contrib:2.0
+--- com.android.support:recyclerview-v7:21.0.3
| +--- com.android.support:support-annotations:21.0.3
| \--- com.android.support:support-v4:21.0.3
| \--- com.android.support:support-annotations:21.0.3
+--- com.android.support:support-v4:21.0.3 (*)
\--- com.android.support.test.espresso:espresso-core:2.0 (*)
espresso-contrib
原因のようです...
exclude
の21.0.3エディションをブロックし、自分で22.0.0エディションをrecyclerview-v7
プルし、espresso-contrib
のニーズに十分に対応できるように祈ることができます。個人的には、長い依存関係リストで正気を維持していることに驚いています... :-)
dependencies
タスクは、あなたが犯人を識別しやすくすることができる場合がありますgradle.org/docs/current/userguide/...