Dlaczego za każdym razem, gdy tworzę nowy projekt w Android Studio, zawsze pojawia się:
Błąd: (23, 17) Nie udało się rozwiązać problemu: junit: junit: 4.12?
Kiedy usuwam testCompile 'junit:junit:4.12'
w zależnościach, to już nie jest problem.
build.gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.1"
defaultConfig {
applicationId "com.okedroid.myapplication"
minSdkVersion 17
targetSdkVersion 23
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.0.1'
}
java
android
react-native
junit
fathurzero
źródło
źródło
Odpowiedzi:
Miałem ten sam problem. Rozwiązany przez dodanie adresu URL brakującego repozytorium w
build.gradle
pliku:android { [...] repositories { maven { url 'http://repo1.maven.org/maven2' } } [...] }
Otóż to.
źródło
maven
?buildTypes
, w przeciwnym razie wystąpi błąd buildTypes do groovy.lang.Closure .jcenter()
? Czy konieczne jest wyeliminowaniejcenter()
z repozytoriów?Po prostu usuń „testCompile” junit: junit: 4.12 ”z pliku build.gradle:
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12'//remove this line and sync again... worked for me androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', { exclude group: 'com.android.support', module: 'support-annotations'}) //if available, also delete these two lines compile 'com.android.support:appcompat-v7:23.0.1' }
pracował dla mnie i jestem szczęśliwy! :)
Pamiętaj, że to nie jest właściwa odpowiedź na to pytanie. Wspomniałem o tym, ponieważ działa, gdy usuniesz powyższe linie.
źródło
Przejdź do Plik -> Struktura projektu. Otworzy się następujące okno:
Stamtąd:
Mam nadzieję, że u Ciebie też zadziała: D
źródło
Nie można uzyskać biblioteki junit.
repositories { maven { url 'http://repo1.maven.org/maven2' } }
Po dodaniu powyższej linii do bloku androida w pliku build.gradle rozwiązało to problem. Może to być spowodowane tym, że Twoje studio Android nie ma biblioteki junit.
źródło
dodaj repozytorium do pliku build.gradle
repositories { maven { url 'http://repo1.maven.org/maven2' } }
źródło
Prawdopodobnie twoja ocena jest niekompletna, polecam dodać następujące
android{ repositories { maven { url 'http://repo1.maven.org/maven2' } }
ale w niektórych przypadkach nie zadziała, możesz go całkowicie usunąć ze swoich zależności w swoim gradle.
Myślę, że będzie dobrze, jeśli ponownie zainstalujesz studio android z warunkiem usuwania folderu gradle, który znajduje się w folderze użytkownika
.gradle
źródło
Oto, co zrobiłem, aby rozwiązać ten sam problem. Jestem za zaporą ogniową, co, jak przypuszczam, jest tym samym problemem, co twój. Więc próbowałem usunąć
testCompile 'junit:junit:4.12' line
ale to mi nie pomogło. Próbowałem dodać poniższe linie kodu:
repositories { maven { url 'http://repo1.maven.org/maven2' } }
Nawet to mi się nie udało.
Próbowałem usunąć (-) i odczytać (+) Junit4.12 z zależności biblioteki w Ustawieniach modułu. Jednak to mi się nie udało.
Kilkakrotnie próbowałem synchronizować i odbudowywać projekt. Nadal nie działa dla mnie.
Na koniec ręcznie pobrałem plik Junit4.12.jar ze strony mvnrepository. Umieściłem ten plik jar w obszarze roboczym systemu Android w folderze Project w folderze libs. Następnie przejdź do Module Settings> Dependencies Tab> (+)> File Dependency> w oknie Sleect path, rozwiń folder `` libs '', a znajdziesz tam skopiowany plik Jar. Wybierz plik i kliknij „OK”. Teraz usuń poprzednią wersję junit4.12 z listy zależności.
Powinieneś mieć jeden wpis
"libs\junit-4.12.jar"
na liście zależności. Teraz kliknij „OK”.Teraz Gradle odbuduje projekt i powinno być gotowe.
Mam nadzieję że to pomoże!
źródło
Spróbowałem kiedykolwiek, ale jedyną rzeczą, która pomogła mi rozwiązać problem, było usunięcie linii
testCompile 'junit:junit:4.12'
z poziomu aplikacji.
źródło
Dzieje się tak, ponieważ HTTPS jest blokowany przez serwer proxy. Spróbuj zmienić domyślny jcenter (który używa HTTPS) na HTTP.
Przed
Po
repositories { jcenter { //Default one is HTTPS url "http://jcenter.bintray.com/" } }
Powtórz powyższy krok dla wszystkich projektów.
allprojects { repositories { jcenter { url "http://jcenter.bintray.com/" } } }
Lub też zmiana z jcenter na mavenCentral również działała
źródło
Otrzymałem ten błąd po utworzeniu nowego projektu. W pliku build.gradle miałem to:
Zmieniam to na następujące i błąd zniknął:
jcenter { url "http://jcenter.bintray.com/" }
Myślę, że dzieje się tak dlatego, że jestem za zaporą ogniową i określenie adresu URL w ten sposób zmienia go z https na http
źródło
Prawdopodobnie jesteś za proxy. Zdarzyło mi się, że użyłem mojego mobilnego tetheringu (bez proxy) projektu odbudowy i błąd zniknął. Przywrócono pierwotne połączenie (z proxy) i odbudowano bez błędów.
źródło
Czy używasz proxy ? Jeśli tak, problem może wynikać z braku konfiguracji sieci dla protokołu HTTPS w
gradle.properties
pliku.AndroidStudio automatycznie umieszcza domyślne ustawienia serwera proxy w
gradle.properties
pliku w projekcie, ale tylko dla protokołu HTTP i zapomina o protokole HTTPS.Zasadniczo twój
gradle.properties
plik musi zawierać konfigurację zarówno http, jak i https:źródło
Najczęściej ten problem pojawia się, gdy kiedykolwiek zaktualizujesz swój zestaw SDK, w momencie tworzenia projektu kompilacja Gradle kończy się niepowodzeniem. Jeśli dodasz repozytoria maven i jcenter do pliku build.gradle (moduł: aplikacja), problem zostanie rozwiązany.
repositories { maven { url 'http://repo1.maven.org/maven2' } jcenter { url "http://jcenter.bintray.com/" } }
To są dwie linie, które musisz dodać po
apply plugin: 'com.android.application'
Tak wygląda Twój kod po dodaniu tych dwóch wierszy
apply plugin: 'com.android.application' repositories { maven { url 'http://repo1.maven.org/maven2' } jcenter { url "http://jcenter.bintray.com/" } } android { compileSdkVersion 23 buildToolsVersion "23.0.1" defaultConfig { applicationId "com.okedroid.myapplication" minSdkVersion 17 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } }
źródło
Błąd jest spowodowany brakującymi plikami jar. Moje proste rozwiązanie polega na skopiowaniu wszystkich plików, których nie można rozwiązać, do C: \ Program Files \ Android \ Android Studio \ gradle \ m2repository ... (ścieżka do pliku może być inna). Mam około 6 zależności, których nie można rozwiązać, junit jest jedną z nich, a pozostałe to com, org i javax. Ponieważ jestem za zaporą ogniową, nawet jeśli dodałem kod repozytorium, wydaje się, że Android Studio nie ma do niego dostępu. Poszedłem do repozytorium Mavena i pobrałem wszystkie pliki, których nie można rozwiązać. Problem rozwiązany i synchronizacja Gradle bez błędów. Ale jestem certyfikowanym nowicjuszem z tylko 1-dniowym doświadczeniem, więc nie, jeśli jest to właściwy sposób.
Przykładowy błąd: nie można rozwiązać com: squareup: javawriter: 2.1.1
Krok 1: Utworzyłem ścieżkę C: \ Program Files \ Android \ Android Studio \ gradle \ m2repository \ com \ squareup \ javawriter \ 2.1.1 \
Krok 2: Pobrałem wszystkie pliki jar z repozytorium Maven: http://repo1.maven.org/maven2/com/squareup/javawriter/2.1.1/
Krok 3: Ręcznie pobrałem wszystkie pliki .jar z tego katalogu
Krok 4: Skopiowałem je do C: \ Program Files \ Android \ Android Studio \ gradle \ m2repository \ com \ squareup \ javawriter \ 2.1.1 \
Powtórzyłem to dla wszystkich plików, które nie zostały rozwiązane, w tym junit.
Dla junit, oto katalog, który utworzyłem: C: \ Program Files \ Android \ Android Studio \ gradle \ m2repository \ junit \ junit \ 4.12, a następnie skopiowałem junit-4.12.jar do tego katalogu i błąd junit zniknął.
źródło
źródło
ZMIEŃ swój build.gradle w ten sposób, działa dobrze dla mnie:
apply plugin: 'com.android.application' android { compileSdkVersion 23 buildToolsVersion "22.0.1" repositories { maven { url 'http://repo1.maven.org/maven2' } } defaultConfig { applicationId "YOUR PACKAGE NAME" minSdkVersion 15 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.0.0' }
dodany
repositories { maven { url 'http://repo1.maven.org/maven2' } }
do
android
źródło
Idź do File -> Project Structure -> dependency Tam znajdziesz -> junit: unit: 4.12
Po prawej stronie ... wybierz kompilację z listy rozwijanej. Proste… gotowe.
Obraz referencyjny:
VV Czerwonych
źródło
Moja instalacja Android Studio jest całkowicie offline. Aby rozwiązać tego rodzaju problemy, użyłem Process Monitor. Okazało się, że brakuje kilku plików w „Android Studio \ gradle \ m2repository”. Pobrałem wszystkie pliki z
i skopiowałem te pliki do „Android Studio \ gradle \ m2repository”. Musisz utworzyć strukturę poniżej „m2repository”, ponieważ znajduje się ona poniżej „maven2”. Może brakuje plików, ale w tej chwili przynajmniej kompilacja Gradle jest zakończona bez błędów.
źródło
Miałem ten sam problem.
1 opcja: Pobierz junit 4.12.jar i skopiuj go do folderu lib i uruchom ponownie Android Studio. Korzyści, nie musisz tworzyć żadnego nowego projektu
Opcja 2: Utwórz nowy projekt z połączeniami internetowymi i skopiuj cały kod java i XML do nowo utworzonego projektu. Skorzystaj z tego, że problem zostanie rozwiązany na stałe
źródło
Usuń linię
testCompile 'junit:junit:4.12'
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.0.1' }
Następnie ponownie zsynchronizuj projekt.
źródło
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:23.1.1' }
Uwaga: Usuń wiersz testCompile 'junit: junit: 4.12' został rozwiązany mój problem.
źródło
Spróbuj tego:
dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') //testCompile 'junit:junit:4.12' compile 'com.android.support:appcompat-v7:23.3.0' compile 'com.android.support:design:23.3.0' compile 'com.google.code.gson:gson:2.2.4' }
źródło
Jeśli korzystasz z serwera proxy. Android Studio doda proxy dla http do Gradle, ale nie doda proxy dla https. Dodaj ustawienia proxy dla https do gradle.properties
źródło
jeśli napotkałeś ten problem, możesz go całkowicie rozwiązać, zmieniając:
build.gradle (projekt: ...)
wymień to
buildscript { repositories { jcenter() } dependencies { classpath 'com.android.tools.build:gradle:2.0.0' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files } } allprojects { repositories { mavenCentral() } } task clean(type: Delete) { delete rootProject.buildDir }
źródło
Miałem ten sam problem, ale z innym problemem.
Moim innym problemem było to, że kompilacja Gradle była zbyt wolna!
Rozwiązałem swój problem, wykonując to L.
Jeśli podoba Ci się mdew, potrzebujesz tego za każdym razem, gdy tworzysz projekt, aby to zrobić
Więc jeśli chcesz ustawić domyślną opcję na maven
Zrób to:
Przejdź do folderu:
Następnie otwórz
build.gradle.ftl
plik z Notepad ++ lub notatnika i zastąpić wszystkojcenter()
zmavenCentral()
.EDYCJA: Dlaczego głosowano w dół? nie lubisz tego?
źródło
Nie mogłem zrozumieć, dlaczego Android Studio nie synchronizuje się z Gradle. Okazało się, że nie spodobał mu się mój VPN, więc uważaj na to!
źródło
Idź do Idź do "Plik" -> "Struktura projektu" -> "Aplikacja" Na karcie "Właściwości". W polu „Library Repository” wpisz „ http://repo1.maven.org/maven2 ”, a następnie naciśnij OK. Tak to zostało dla mnie naprawione. Teraz projekt jest w trakcie kompilacji.
źródło
Po prostu połącz się z Internetem, uruchom Android Studio i otwórz swój projekt. Podczas gdy Gradle Sync pobierze zależności z Internetu (wszystkie pliki JAR). To rozwiązało to dla mnie. Brak edycji w pliku Gradle, wszystko zostało zrobione automatycznie przez Android Studio. Korzystanie z Android Studio 2.2 :)
Nie zapomnij również zainstalować Java JDK 1.x (7 lub 8 wszystko działa dobrze).
źródło
Chciałbym zasugerować rozwiązanie, które doskonale pasuje do mojej sytuacji:
najpierw upewnij się, że dodaj
repositories { maven { url 'http://repo1.maven.org/maven2' } }
do pliku build.gradle na poziomie projektu wewnątrz
buildscript {}
blokunastępnie dodaj
allprojects { repositories { maven { url 'http://repo1.maven.org/maven2' } }
do pliku build.gradle na poziomie projektu
następny punkt to dodawanie
na poziomie modułu build-gradle wewnątrz
buildTypes{ }
źródło
Przejrzyj wiele odpowiedzi, ale nic nie działa. Na szczęście znalazłem łatwe rozwiązanie. Nie trzeba komentować junit4.12 ani go usuwać. Problem jest tutaj:
- androidTestCompile files('libs/junit-4.12.jar')
Ta część pokazuje nam ścieżkę do poszukiwania pliku w bibliotece w Twoim projekcie. Nie mam pojęcia dlaczego, ale z jakiegoś powodu domyślnie jest pusty. W moim przypadku ścieżka to:
Jasne, że możesz usunąć tę linię w kodzie
build.grandle(Module.app)
ale może być potrzebny później. Oto rozwiązanie:1 - pobierz junit-4.12.jar lub skopiuj go z folderu Android Studio, normalnie powinien tam być. W moim przypadku to tutaj:
do katalogu wymienionego powyżej (do twojego projektu)
2 - usuń i dodaj
3 - odbuduj
4 - ciężko pracuj
źródło