Ten błąd pojawia się podczas próby zbudowania projektu po zmianie laptopa i aktualizacji do Android Studio w wersji 0.8.2.
BŁĄD: kompilacja nie powiodła się z wyjątkiem.
Co poszło nie tak: w głównym projekcie „MyProject” nie znaleziono zadania „”.
Spróbuj: uruchom zadania oceniania, aby uzyskać listę dostępnych zadań. Uruchom z opcją --stacktrace, aby uzyskać ślad stosu. Uruchom z opcją --info lub --debug, aby uzyskać więcej danych wyjściowych dziennika.
BUDOWA NIEUDANA
Oto moje pliki Gradle:
Ustawienia najwyższego poziomu.gradle
include ':MyProject'
build.gradle w MyProject:
apply plugin: 'com.android.application'
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath "com.android.tools.build:gradle:0.12.+"
}
}
repositories {
mavenCentral()
}
android {
compileSdkVersion 20
buildToolsVersion "20"
defaultConfig {
minSdkVersion 14
targetSdkVersion 20
}
}
dependencies {
compile 'de.timroes.android:EnhancedListView:0.3.0@aar'
compile 'com.nineoldandroids:library:2.4.0'
}
Plik build.gradle najwyższego poziomu jest pusty
android
build
gradle
android-studio
TomRichardson
źródło
źródło
Odpowiedzi:
Chociaż odpowiedź jest spóźniona, jest to trudne dla Google (pojedyncze cudzysłowy) i nie jest jasne, co się dzieje. Nie mam jeszcze reputacji, aby komentować lub pytać o zakres (lub publikować 3 linki), więc ta odpowiedź może być trochę uciążliwa.
Aby szybko odpowiedzieć, możesz mieć wiele wtyczek Gradle w swoim projekcie.
Synchronizuj Gradle Wrapper i wtyczki
Wydawało się, że mój problem zaczął się od uszkodzonego pliku IML. Android Studio (między zamknięciem a ponownym otwarciem projektu) zaczęło narzekać, że IML zniknął (nie było) i moduł powinien zostać usunięty, co odrzuciłem. Utrzymywało się, zaktualizowałem do AS 0.8.7 (kanał kanarek) i utknąłem w problemie z OP (zadanie „nie znaleziono w projekcie głównym). To całkowicie zablokowało kompilacje, więc musiałem zagłębić się w Gradle.
Moje kroki naprawy w systemie OSX (dostosuj do systemu Windows):
Sprawdzono opakowanie Gradle (obecnie 1.12.2; nie próbuj teraz używać 2.0).
Zakładając, że nie potrzebujesz określonej wersji, użyj najnowszej obsługiwanej dystrybucji
$ vi ~/project/gradle-wrapper.properties ... distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip
Można to ustawić w Android Studio w Preferencjach | Gradle (ale 0.8.7 dawał mi błędy „nieprawidłowej lokalizacji”).
Na przykład w build.gradle masz tę wtyczkę:
dependencies { classpath "com.android.tools.build:gradle:0.12.+" }
Możesz spróbować przełączyć go na dokładną wersję, na przykład:
dependencies { classpath "com.android.tools.build:gradle:0.12.2" }
i (po zarejestrowaniu wersji, z której się zmieniasz w każdym przypadku), sprawdzenie, czy każdy plik build.gradle w twoim projekcie pobiera tę samą wersję wtyczki. Utrzymanie „+” powinno działać (dla 0.12.0, 0.12.1, 0.12.2 itd.), Ale moja kompilacja się powiodła, kiedy zaktualizowałem bibliotekę Google Volley (pierwotnie gradle: 0.8. +) I mój główny projekt (pierwotnie 0.12. +) do wersji poprawionej: gradle: 0.12.2.
Inne kontrole
Upewnij się, że nie masz dwóch modułów aplikacji systemu Android w tym samym projekcie
Może to współdziałać z ostatecznym rozwiązaniem (różne wersje Gradle powyżej) i przyczyną
UNEXPECTED TOP-LEVEL EXCEPTION: com.android.dex.DexException: Multiple dex files define (various classes)
Aby sprawdzić, buduj | Make Project nie powinno wyskakiwać okienka z pytaniem, jaką aplikację chcesz stworzyć.
Jeśli to zobaczysz ...
W moich ostatnich kompilacjach wciąż widziałem okropne awarie (strony wyjątków), ale w ciągu kilku sekund komunikaty zostały wyczyszczone, kompilacja powiodła się i aplikacja została wdrożona. Ponieważ nigdy nie mogłem tego wyjaśnić, a aplikacja działała, nigdy nie zauważyłem, że mam w projekcie dwie wtyczki Gradle. Więc myślę, że wtyczki Gradle walczyły ze sobą; jeden uległ awarii, drugi stracił stan i zgłosił błąd.
Jeśli masz czas, 1-godzinne wideo „A Gentle Introduction to Gradle” (www.youtube.com/watch?v=OFUEb7pLLXw) naprawdę pomogło mi podejść do plików kompilacji Gradle, zadań, decyzji dotyczących kompilacji itp.
Zrzeczenie się
Uczę się tego całego stosu, na obcym systemie operacyjnym, po przepracowaniu innej kariery ... wszystko w tym samym czasie i pod presją. W ciągu ostatnich kilku miesięcy trafiłem na każdą ścianę, którą moim zdaniem ma Android; Byłem tu dość często i to jest mój pierwszy wpis. Pomyślałem, że to trudne rozwiązanie, więc szczerze przepraszam, jeśli jakość mojej odpowiedzi odzwierciedla trudność, jaką miałem w dotarciu do niej.
źródło
$ rm -rf ~/.gradle/
Pobierz obraz systemu (docelowego poziomu Androida projektu) z menedżera SDK dla zaimportowanego projektu.
Ten błąd pojawia się, gdy nie masz docelowego zestawu SDK projektu systemu Android zainstalowanego w folderze sdk
np. Docelowym poziomem sdk zaimportowanego projektu może być android-19, aw folderze sdk-> obrazy-systemu możesz mieć zainstalowany system Android-21. więc musisz pobrać obraz systemu android-19 i inne pliki z menedżera sdk lub możesz go skopiować wklej, jeśli masz obraz systemu.
źródło
Usunąć:
<facet type="android" name="Android"> <configuration /> </facet>
w swoim pliku iml. To działa dla mnie.
https://plus.google.com/+AlexRuiz/posts/49hP3V9GSGe
źródło
<facet type="java-gradle" name="Java-Gradle">...
Zdarzyło mi się to niedawno, kiedy zamknąłem jeden projekt Android Studio i zaimportowałem inny projekt Eclipse. Wydawało się, że to jakiś błąd w Android Studio, w którym zachowuje niektóre ustawienia gradacji z wcześniej otwartego projektu, a następnie gubi się w nowym projekcie.
Rozwiązanie było niezwykle proste: zamknij projekt i całkowicie zamknij Android Studio, przed ponownym otwarciem, a następnie zaimportuj / otwórz nowy projekt. Od tego momentu wszystko idzie gładko.
źródło
Prosta poprawka dla mnie była
źródło
W moim przypadku ustawienie „wersji Gradle” tak samo jak „Wersja wtyczki Androida” w menu Plik-> Struktura projektu-> Projekt rozwiązało problem.
źródło
Najwyraźniej ten błąd ma wiele przyczyn. Oto, co naprawiło to dla mnie.
Uruchomiłem polecenie kompilacji w ten sposób:
./gradlew :testapp: build
Uruchomienie go bez miejsca rozwiązało problem:
./gradlew :testapp:build
źródło
Wystąpił ten błąd podczas przełączania się z jednej gałęzi Git na inną, a następnie próbując uruchomić „Wyczyść projekt”. użyłem
ack
nazwy zadania i znalazłem ją w pliku .iml.Moim rozwiązaniem było ponowne wygenerowanie pliku .iml projektu, klikając (w menu głównym) Narzędzia> Android> Synchronizuj projekt z plikami Gradle. ( Dzięki tej odpowiedzi .)
źródło
Czasami, jeśli otworzyłeś dwa okna Android Studio i podczas próby kompilacji, ten problem może się zdarzyć. Dla mnie, kiedy kompilowałem wspierany moduł Google Cloud Endpoint, który nie był osadzony w projekcie, a raczej współdzielony między różnymi projektami Android Studio, i gdy jest więcej niż raz otwarta instancja, ten błąd pojawia się dla mnie. Ale jak tylko zamkniesz inne okna, wszystko będzie dobrze. Czasami może być konieczne całkowite ponowne uruchomienie Android Studio.
źródło
Mam ten problem, ponieważ nie mógł znaleźć ścieżki Android SDK. Brakowało mi
local.properties
pliku z nim lubANDROID_HOME
zmiennej środowiskowej z nim.źródło
Upewnij się, że masz najnowsze wartości w plikach gradle. W chwili pisania tego tekstu:
buildToolsVersion "21.1.2"
zależności {classpath 'com.android.tools.build:gradle:1.1.0'}
źródło
Jeszcze inne rozwiązanie tego samego problemu:
Zdarzało mi się to za każdym razem, gdy importowałem projekt zaćmienia do studia za pomocą kreatora (wersja studio 1.3.2).
Przypadkowo odkryłem, że opuszczenie studia Android i ponowne jego ponowne uruchomienie spowodowało, że problem zniknął.
Frustrujące, ale mam nadzieję, że to komuś pomoże ...
źródło
źródło
Problem
W szczególności otrzymałem
"[module_name]:prepareDebugUnitTestDependencies" task not found
błąd za każdym razem, gdy uruchomiłem kompilację Gradle. Zdarzyło mi się to po zaktualizowaniu mojego Android Studio do 3.0.0.Dochodzenie
Wcześniej dodałem opcje wiersza poleceń do kompilatora opartego na gradle, które można znaleźć w: Plik -> Ustawienia -> Kompilacja, wykonanie, Wdrożenie -> Kompilator -> Opcje wiersza poleceń . W szczególności wykluczyłem szereg zadań, w tym wyżej wymienione zadanie. Chociaż działało to dobrze w poprzedniej stabilnej wersji (wówczas 2.3), wydaje się, że to było przyczyną niepowodzenia kompilacji.
Rozwiązanie
To jedno z wielu możliwych rozwiązań. Upewnij się, że masz poprawne opcje wiersza polecenia określone w ustawieniach w: Plik -> Ustawienia -> Kompilacja, wykonanie, wdrażanie -> Kompilator -> Opcje wiersza polecenia i że żadna z nich nie powoduje tego problemu.
W moim przypadku usunąłem wykluczenie tego zadania (i innych zadań, które wydawały się powiązane), pozostawiłem wykluczone niepowiązane zadania i zadziałało!
źródło
Ustaw ścieżkę do folderu głównego i po uruchomieniu poniższego polecenia
ex : cd C:\Users\maha\Documents\gradle\gs-gradle-master\initial
źródło
To właśnie zrobiłem
Usuń folder .idea
Zaimportuj projekt ponownie
źródło
Usuwam / zmieniam nazwę
.gradle
folderuc:\users\Myuser\.gradle
i ponownie uruchamiam Android Studio i działało dla mnieźródło
Najwyraźniej ten problem jest spowodowany przez Android Studio w różnych sytuacjach, ale przyczyną jest błąd kompilacji podczas importowania istniejącego projektu do studia Android.
W moim przypadku zaimportowałem mój istniejący projekt, w którym miałem zainstalować kilka narzędzi do kompilacji, a ostatecznie konfiguracja kompilacji została wykonana z błędem. W takim przypadku wykonaj następujące czynności
Uwaga: jestem pewien, że ten rodzaj błędu nie występuje w kodzie źródłowym, gdy stało się to w przypadku importu projektu .
źródło
W moim przypadku napotykam ten problem, że opcje kompilacji w Android Studio to „stacktrace”. Zmodyfikuj stacktrace na --stacktrace , problem rozwiązany.
źródło
Rozwiązałem ten problem, wystarczy utworzyć plik w folderze Androida
Przejdź do folderu Androida
Utwórz plik local.properties
następnie po prostu dodaj ten kod w pliku local.properties: -
Jeśli używasz MacBooka, sdk.dir = / Users / NAZWA UŻYTKOWNIKA / Library / android / sdk
jeśli używasz systemu Windows, sdk.dir = C: \ Users \ NAZWA UŻYTKOWNIKA \ AppData \ Local \ Android \ sdk
jeśli używasz Linuksa, sdk.dir = / home / NAZWA UŻYTKOWNIKA / Android / sdk
jeśli chcesz wiedzieć, jaka jest Twoja nazwa użytkownika systemu, po prostu użyj polecenia dla Mac whoami
a następnie po prostu uruchom ponownie polecenie reaguj-natywne run-android
Dzięki :)
źródło