2016-04-11 12 views
19

Natknąłem się na ten wyjątek podczas dodawania espresso do projektu Android. Już spróbować link, który pochodzi z tego wyjątkuKonflikt z zależnością "com.android.support:support-annotations". Rozwiązane wersje aplikacji (23.3.0) i aplikacji testowej (23.1.1) różnią się

**Conflict with dependency 'com.android.support:support-annotations'. Resolved versions for app (23.3.0) and test app (23.1.1) differ** 

ja też dodać następujący wiersz zgodnie z innego wątku znalazłem

**androidTestCompile 'com.android.support:support-annotations:23.1.0'** 

Ale problem nadal utrzymywać. Korzystam z następujących konfiguracji:

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' 

Wszelkie pomysły, dzięki.

+0

Próbowałaś uruchomiony './gradlew -q app: dependencies', aby zobaczyć, która biblioteka daje ci konflikt? –

+0

Przejdź na: http://stackoverflow.com/a/36835268/3779239 Ten link rozwiąże Twój problem. –

Odpowiedz

14
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' 
} 
+1

Mam to wszystko i nadal otrzymuję błąd. –

+0

prawdopodobnie o innej bibliotece? dodaj wszystkie biblioteki com.android.support ... do AndroidTestCompile – Frank

+1

Dzięki ... androidTestCompile 'com.android.support:support-annotations:XX.XX.XX' twoja wersja aplikacji – Pierry

0
с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' 
} 

Jest to rozwiązanie

+0

Dlaczego to rozwiązałoby problem? Nie rozumiem tego. Wypróbowałem to i nic nie rozwiązuje. –

+0

Moi Zależności wersje: <- język: Gradle ->! androidGradleToolsVersion = '2.1.0' androidBuildToolsVersion = '23 .0.2' androidSDKVersion = 23 androidSupportLibVersion = '23 .3.0' <- język : lang-none -> spróbuj go zmienić.Lub spróbuj użyć najnowszych wersji. Ale myślę, że będziesz musiał użyć fragmentu kodu powyżej. –

20

rozwiązać problem 'Rozwiązane wersje aplikacji (24.0.0-beta1) oraz aplikacji testowej (23.0.1) różnią się' dla mnie.

android{  
    configurations.all { 
     resolutionStrategy.force 'com.android.support:support-annotations:23.0.1' 
    } 
} 

I nie zapomnij dodać następujący kod, jeśli chcesz uruchomić AndroidTest

defaultConfig { 
    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 
} 
+0

To jest jedyna odpowiedź, która sprawdziła się u mnie. Trzeba umieścić 'configurations.all' na dole ** dependencies ** block. –

7

Obecnie podczas tworzenia nowego projektu na Androida Studio, dodaje tę zależność domyślnie:

androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { 
    exclude group: 'com.android.support', module: 'support-annotations' 
}) 

Sekcja exclude prawdopodobnie pozwoli uniknąć konfliktu wspomnianego w pytaniu. Też miałem do czynienia z tym problemem, próbując dodać zależności runner:0.5 i rules:0.5. Moim rozwiązaniem było zastosowanie tego samego kodu na powyższym:

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' 
}) 

To działa dla mnie. Mam nadzieję, że to pomoże.

2

adnotacja biblioteka jest używana przez wszystkich trzech dependancies zasad: 0,5' , biegacz: 05 i espresso-core: 2.2.2, więc po pracował dla mnie

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' 
}