Конфликт с зависимостью "com.android.support:support-annotations". Разрешенные версии для приложения (23.3.0) и тестового приложения (23.1.1) отличаются
Я столкнулся с этим исключением, добавив espresso в проект Android. Я уже пытаюсь ссылку, которая поставляется с этим исключением
**Conflict with dependency 'com.android.support:support-annotations'. Resolved versions for app (23.3.0) and test app (23.1.1) differ**
Кроме того, я добавляю следующую строку в соответствии с другим найденным мной тегом
**androidTestCompile 'com.android.support:support-annotations:23.1.0'**
Но проблема все еще сохраняется. Я использую следующие конфигурации:
buildToolsVersion "23.0.2"
androidTestCompile 'com.android.support.test:runner:0.5'
androidTestCompile 'com.android.support.test:rules:0.5'
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2'
Любые идеи, спасибо.
Ответы
Ответ 1
Это решит проблему: "Разрешенные версии для приложения (24.0.0-beta1) и тестового приложения (23.0.1) меняются".
android{
configurations.all {
resolutionStrategy.force 'com.android.support:support-annotations:23.0.1'
}
}
И не забудьте добавить следующий код, если вы хотите запустить AndroidTest
defaultConfig {
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
Ответ 2
dependencies {
//...
// Solves "versions for app (23.3.0) and test app (23.1.1) differ"
androidTestCompile 'com.android.support:support-annotations:23.3.0'
// Android JUnit Runner
androidTestCompile 'com.android.support.test:runner:0.5'
// JUnit4 Rules
androidTestCompile 'com.android.support.test:rules:0.5'
}
Ответ 3
Теперь, когда вы создаете новый проект в Android Studio, он добавляет эту зависимость по умолчанию:
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
Раздел exclude
, вероятно, должен избегать конфликта, упомянутого в вопросе. Я также столкнулся с этой проблемой при попытке добавить зависимости runner:0.5
и rules:0.5
. Мое решение заключалось в том, чтобы применить к ним один и тот же код:
androidTestCompile ('com.android.support.test:runner:0.5', {
exclude group: 'com.android.support', module: 'support-annotations'
})
androidTestCompile ('com.android.support.test:rules:0.5', {
exclude group: 'com.android.support', module: 'support-annotations'
})
Это работает для меня. Надеюсь, что это поможет.
Ответ 4
библиотека аннотаций используется всеми тремя правилами зависимостей: 0,5 ', runner: 05 и espresso-core: 2.2.2, поэтому после работы для меня
androidTestCompile 'com.android.support.test:runner:0.5', {
exclude group: 'com.android.support', module: 'support-annotations'
}
androidTestCompile 'com.android.support.test:rules:0.5', {
exclude group: 'com.android.support', module: 'support-annotations'
}
androidTestCompile 'com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
}
Ответ 5
сompile 'com.android.support:support-annotations:23.3.0'
androidTestCompile ("com.android.support.test:runner:0.5"){
exclude group: 'com.android.support'
}
androidTestCompile ('com.android.support.test:rules:0.5'){
exclude group: 'com.android.support'
}
Это решение