Moja aplikacja na Androida korzystająca z Kotlin zgłasza ten wyjątek, gdy próbuję uruchomić „aplikację” w emulatorze na telefonie komórkowym. Kiedy buduję mój projekt działa dobrze, bez błędów.
Ja używam:
- SDK 28 (Android 9.0 (Pie))
- Stopień 5.1.1
- Wtyczka Gradle 3.5.0-alpha03
- Kotlin 1.3.10
- Java 1.8.0_151
- OSX 10.13.2
org.gradle.internal.exceptions.LocationAwareException: buildOutput.apkData must not be null
at org.gradle.initialization.exception.DefaultExceptionAnalyser.transform(DefaultExceptionAnalyser.java:99)
at org.gradle.initialization.exception.DefaultExceptionAnalyser.collectFailures(DefaultExceptionAnalyser.java:65)
at org.gradle.initialization.exception.MultipleBuildFailuresExceptionAnalyser.transform(MultipleBuildFailuresExceptionAnalyser.java:39)
at org.gradle.initialization.exception.StackTraceSanitizingExceptionAnalyser.transform(StackTraceSanitizingExceptionAnalyser.java:29)
at org.gradle.initialization.DefaultGradleLauncher.finishBuild(DefaultGradleLauncher.java:194)
at org.gradle.initialization.DefaultGradleLauncher.finishBuild(DefaultGradleLauncher.java:141)
...
Caused by: java.lang.IllegalStateException: buildOutput.apkData must not be null
at com.android.build.gradle.internal.ide.EarlySyncBuildOutput$Companion$load$2.invoke(EarlySyncBuildOutput.kt:103)
at com.android.build.gradle.internal.ide.EarlySyncBuildOutput$Companion$load$2.invoke(EarlySyncBuildOutput.kt:67)
at kotlin.sequences.TransformingSequence$iterator$1.next(Sequences.kt:174)
at kotlin.sequences.SequencesKt___SequencesKt.toCollection(_Sequences.kt:691)
at kotlin.sequences.SequencesKt___SequencesKt.toMutableList(_Sequences.kt:721)
at kotlin.sequences.SequencesKt___SequencesKt.toList(_Sequences.kt:712)
...
Odpowiedzi:
Kliknij
Build
->Clean Project
Następnie
Build
->Make Project
Testowane na klasach 3.5.0-alpha3, -alfa5 i 3.4.0 (klasa projektu)
źródło
com.android.tools.build:gradle:3.5.0-alpha05
(zBuild
->Rebuild Project
w AS)com.android.tools.build:gradle:3.5.0
, to rozwiązanie nie działa dla mnieKrok 1: Rozwiązałem ten problem, modyfikując lokalizację folderu docelowego .
Przed
Po
Krok 1: Po aktualizacji Androida Studio 3.4 musisz dodać całą zależność używaną w module lub bibliotece na poziomie aplikacji
build.gradle
.Krok 2: Wyczyść projekt (kompilacja> Wyczyść projekt)
Krok 3: Przebuduj projekt (kompilacja> Przebuduj projekt)
Teraz Twój projekt doskonale się skompiluje.
źródło
DLA Android Studio 3.5 | 3.6
debugowanie kompilacji kończy się bez żadnego błędu. Podczas tworzenia podpisanego pliku .apk prowadzi do tego samego błędu
najprostszym rozwiązaniem, które znalazłem, jest. Podczas podpisywania apk po wprowadzeniu poświadczeń podpisywania, gdy przejdziesz do następnego ekranu, poprosi o folder docelowy, po prostu zmień domyślną ścieżkę.
Załóżmy, że obecna ścieżka docelowa to
zmień na
następnie wygeneruje podpisany apk.
źródło
Ten błąd pojawiał się także podczas próby wygenerowania podpisanego pliku APK dla mojej wersji. Wypróbowałem wszystkie powyższe metody, niestety żadna nie działała dla mnie.
To, co zadziałało, to wygenerowanie najpierw podpisanej wersji aplikacji do debugowania, a następnie wygenerowanie pierwszej wersji.
Nie wiem, co dokładnie zmieniło się ani jaki był pierwotny problem, ale zadziałało. Mam nadzieję, że ci to pomoże, ponieważ ten błąd jest dość irytujący ...
źródło
com.android.tools.build:gradle:3.5.0
, to rozwiązanie nie działa dla mnieCzyszczenie projektu nie pomogło mi, ale pomogło mi ręczne usunięcie wszystkich automatycznie wygenerowanych folderów kompilacji we wszystkich modułach.
źródło
build
katalogów w dowolnym eksploratorze plików, zobaczysz, że niektóre pliki nadal tam są.com.android.tools.build:gradle:3.5.0
, to rozwiązanie nie działa dla mnieAktualizacja do Androida Studio 3.4.? dostaję wiadomość
szukając odpowiedzi znalazłem procedurę:
Build
->Clean Project
ale to nie zadziałało, wiem, że ta procedura usunie zawartość do
/build
katalogu, ale z mojego doświadczenia, że nie działa we wszystkich przypadkach, więc wypróbowałem „surowy” sposób, usuwając katalog:następnie odbudowuję projekt i zadziałał.
źródło
<flavor>/<buildConfig>
katalogi (chodzi ooutput.json
pliki w nich zawarte).Clean project
sam nie rozwiązał problemu.Próbowałem ponad wieloma rozwiązaniami, ale nic się nie wydarzyło, ale znalazłem to i działało dla mnie
Teraz jestem w stanie wygenerować apk
źródło
Wszystkie rozwiązania ze mną nie działały
Android Studio V 3.5
Android gradle plugin V 3.4.2
Wersja Grade V 5.1.1
Odniesienie
źródło
Próbowałem wielu rzeczy, aby rozwiązać problem, ale nic nie pomogło. Ten błąd pojawia się podczas próby wygenerowania podpisanego pliku APK.
Przejście na starsze wersje Androida Studio pomogło (3.4.2) działać, jednak nie jest to rozwiązanie.
Funkcja „Wyczyść projekt” w systemie AS nie czyści miejsca, w którym tworzony jest wygenerowany plik apk, a jeden plik może blokować całą procedurę: output.json
Spróbuj usunąć output.json z ... / app / projectname / release / output.json
źródło
Korzystałem z Androida Studio 3.5 beta 2 i miałem ten sam błąd, ale tylko w mojej wersji wydania. Po wypróbowaniu każdego innego rozwiązania, które znalazłem, jedynym sposobem, w jaki mogłem ponownie skompilować, było powrót do Androida Studio 3.4.
źródło
Mi to pasuje:
ręcznie usuń folder kompilacji z projektu.
w terminalu Android studio wpisz to polecenie
jeśli użytkownik systemu Windows
jeśli użytkownik Linux
źródło
com.android.tools.build:gradle:3.5.0
, to rozwiązanie nie działa dla mnieTen problem występuje zwykle w przypadku uruchamiania wielu okien studia Androida z różnymi projektami.
Rozwiązaniem jest
proszę załączyć zrzut ekranu
źródło
com.android.tools.build:gradle:3.5.0
, to rozwiązanie nie działa dla mnieWystarczy zmienić lokalizację wydania / debugowania Apk .
DAWNY:
po zmianie:
źródło
Rozwiązaniem było dla mnie usunięcie wszystkich plików i folderów z folderu wyjściowego apk. Miałem ten problem podczas tworzenia podpisanej aplikacji dla smaku „produkcyjnego”, a
output.json
folder wyjściowy „funkcja” powoduje problem ->Android Studio 3.6 Canary 7
pokazał mi poprawny komunikat o błędzie. Działa również teraz dla stabilnego AS 3.5 z Gradle Plugin 3.5.0.źródło
Wszystkie rozwiązania ze mną nie działały
W moim przypadku aktualizacja AndroidStudio 3.4+ do wersji 3.5.
I na koniec rozwiązuję go, modyfikując folder „Destination Folder” do szczegółowego pic „app / build / Output / apk”
źródło
jedynym rozwiązaniem, które działa dla mnie, jest użycie w mojej kategorii root
co próbowałem: - ręcznie wyczyść cały folder kompilacji - unieważnij pamięć podręczną, ale żaden z nich nie działa
PS: Używam Androida Studio 3.5 BTW
Aktualizacja :
podobnie jak @Vishrut Mavani, zmiana folderu docelowego wersji jest sprawna
źródło
Zazwyczaj ten problem występuje podczas aktualizacji Androida Studio V3.4 do V3.5. Spróbuj usunąć
debug/output.json
irelease/output.json
pliki.Następnie spróbuj wykonać następujące czynności:
Krok 1: Wyczyść projekt (kompilacja> Wyczyść projekt)
Krok 2: Przebuduj projekt (kompilacja> Przebuduj projekt)
źródło
Mam Android Studio 3.5.1. Dla mnie poniżej działają
źródło
W moim przypadku kompilacja i uruchomienie projektu z różnymi konfiguracjami kompilacji zakończyło się powodzeniem. Ale generowanie podpisanego apk
Cause: buildOutput.apkData must not be null
powoduje błąd, z drugiej strony wygenerowano apk i drukuje widok przełączania kompilacji wynikówBUILD SUCCESSFUL
. Instalacja ręczna kończy się komunikatemApp not installed
. Moja wina polegała na używaniucompileSdkVersion 'android-P'
i po przejściu nacompileSdkVersion 28
wszystko idzie dobrze.źródło
Wypróbowałem wszystkie rozwiązania i żadne z nich nie pomogło! w końcu po wielu próbach zrozumiałem, po prostu postępuj zgodnie ze wskazówkami:
yourProject/app/
build.gradle na poziomie aplikacji (wewnątrz Androida):
5. na koniec to polecenie:
prochowiec:
./gradlew clean assemble_YOUR_FAVOR_Release
zdobyć:
gradlew clean assemble_YOUR_FAVOR_Release
gdzie
_YOUR_FAVOR_
jest twoja opcjonalna przysługa, jeśli nie korzystasz z żadnej przysługi, po prostu użyjassembleRelease
zamiastassemble_YOUR_FAVOR_Release
źródło
Ten problem występuje po aktualizacji mojego Androida Studio v3.4 do v3.5. Teraz działa dobrze
Rozwiązałem ten problem, usuwając pliki debug / output.json i release / output.json
Android Studio 3.5 compilesdkVersion 28
działa generowanie apk
źródło
Zirytował mnie również ten sam błąd. Ale zmiana mojego podpisanego miejsca docelowego apk z c / users / project / app na c / users / project działała dla mnie.
źródło
1- Usuń wszystkie wygenerowane pakiety aplikacji (.aab) i pliki APK dla wszystkich wariantów.
2- Usuń folder kompilacji
3- czysty projekt
źródło
Ręcznie usunąłem wszystkie wychodzące foldery wersji kompilacji, a także folder kompilacji w folderze projektu.
źródło
Wygeneruj podpisany plik APK do debugowania , a następnie możesz wygenerować podpisany plik APK do wydania .
źródło
Rozwiązanie :-
1-
Build -> Clean Project
nie pomogło2-
Build -> Make Project
nie pomogło3- restart android studio nie pomógł
4- Ręcznie usuń folder kompilacji z
app
iproject
nie pomógłjedynym rozwiązaniem dla mnie było usunięcie wszystkich starych kompilacji z folderu docelowego
źródło
Wygląda na to, że wyczyszczenie projektu może rozwiązać problem, ale dla mnie tak to działało.
źródło