Podział lib_main został zdefiniowany wiele razy


102

Podział lib_main został zdefiniowany wiele razy

W „com.android.tools.build:gradle:2.0.0-alpha3” powodzenie kompilacji, ale błędy występujące w pliku „com.android.tools.build:gradle:2.0.0-alpha5”.

błąd konsoli


wreszcie natychmiastowa praca! com.android.tools.build:gradle:2.0.0-alpha8 i gradle.properties „org.gradle.jvmargs = -Xmx8g” zostały rozwiązane w celu zmiany.


Mając dokładnie ten sam problem. Czy przez przypadek używasz smaków produktów i applicationIdSuffix?
Michael De Soto

Niestety, nie używaj "smaków produktu" i "applicationIdSuffix". ale używając „MultiDex”.
shinhyo

6
ten sam błąd tutaj, wyłączenie natychmiastowego uruchamiania pomaga. Dzieje się tylko na urządzeniach z systemem Android 6. Android Studio 2.0 5 Korzystanie z applicationIdSuffix, MultiDex, bez smaku produktu
Happy Dev

1
@Happydev Rozwiązany przez wyłączenie funkcji instantrun!
shinhyo

1
@bkurzius nie wydaje mi się rozwiązaniem, cały punkt aktualizacji został uruchomiony błyskawicznie. Miałem nadzieję, że ktoś znajdzie coś takiego, jak usunąć jakąś bibliotekę lub wtyczkę ... ponieważ natychmiastowe uruchamianie działa świetnie na Marshmallow w innym projekcie.
Happy Dev

Odpowiedzi:


103

Dla tych, którzy zastanawiają się, czym jest InstantRun (pierwsze ustawienie na zdjęciu): wprowadź opis obrazu tutaj

I tak, wyłączenie tego ustawienia rozwiązuje problem.

Edytuj 19.01.16

„com.android.tools.build:gradle:2.0.0-alpha6” został wydany trzy dni temu. W tej nowej wersji błąd „Podziel lib_main został zdefiniowany wiele razy” zniknął i instalacja aplikacji się powiodła, ale teraz pojawia się błąd w czasie wykonywania:

java.lang.RuntimeException: Unable to instantiate application
com.android.tools.fd.runtime.BootstrapApplication:
java.lang.ClassNotFoundException: Didn't find class
"com.android.tools.fd.runtime.BootstrapApplication" on path:
DexPathList[[zip file "/data/app/com.onegravity.k10.pro2-2/base.apk",
zip file "/data/app/com.onegravity.k10.pro2-/split_lib_main.apk"]

Caused by: java.lang.ClassNotFoundException: Didn't find class
"com.android.tools.fd.runtime.BootstrapApplication" on path:
DexPathList[[zip file "/data/app/com.onegravity.k10.pro2-2/base.apk",
zip file "/data/app/com.onegravity.k10.pro2-2/split_lib_main.apk"]

Suppressed: java.io.IOException: No original dex files found for dex location
/data/app/com.onegravity.k10.pro2-2/base.apk

Suppressed: java.lang.ClassNotFoundException:
com.android.tools.fd.runtime.BootstrapApplication

Wyłączenie funkcji natychmiastowego uruchamiania eliminuje ten błąd. Poczekajmy na com.android.tools.build:gradle:2.0.0-alpha7 ...

Edytuj 25.01.16

„com.android.tools.build:gradle:2.0.0-alpha7” został wydany dwa dni temu.

Uzyskanie tego samego wyjątku co w wersji 2.0.0-alpha6


2
cóż,
wydaje

2
Wydaje mi się, że spędzam coraz więcej czasu walcząc z systemem kompilacji. To tak, jakby rozwój Androida był coraz bardziej zorientowany na kompilację / wdrażanie i mniej kodowania ... Szkoda naprawdę, ponieważ podoba mi się elastyczność systemu kompilacji Gradle.
Emanuel Moecklin

1
cóż, jeśli potrafią zrobić błyskawiczny bieg, byłoby to warte bólu, ale dotychczas moje doświadczenia z nim nie były dobre :-(
bkurzius

Nawet w innych aplikacjach, które działają z natychmiastowym uruchomieniem, musiałem go wyłączyć. Jest zbyt wiele przypadków, w których natychmiastowe uruchamianie po prostu nie działa.
Wydaje

Dzięki ... Dostałem to na stabilnej wersji 2.3.1
shadygoneinsane

161

Wystarczy usuwania build folderu z appmodułem i Odbuduj projekt!

To rozwiąże problem !.


2
Wspaniały! Powinno to być oznaczone jako prawidłowe rozwiązanie. Dzięki
Hernan Arber

1
Pracowałem! Po prostu przebudowa i ponowne uruchomienie AVD nie pomogło!
MatejC

1
Czy „unieważnienie pamięci podręcznych i ponowne uruchomienie” nie powinno również unieważnić kompilacji? Ponieważ najwyraźniej to nie działa w tej sprawie
GabrielOshiro

Wyłączanie nie jest preferowanym sposobem. Nie ma potrzeby usuwania folderu „build”. Po prostu odbuduj projekt.
Vaibhav

48

Napotkałem ten problem po refaktoryzacji i zmianie nazwy aplikacji w gradle. Idąc za przykładem AskQ, przebudowałem projekt (podążając nieco inną ścieżką):

Build-> Clean Project

śledzony przez

Build-> Rebuild Project

Rozwiązany problem


11

Poprawa:

Usuwanie (projectFolder) / app / build i ponowne zadziałało. (zgodnie z odpowiedzią @AskQ)

Zastanawiam się, czy Build> Clean Project by działał; z menu GUI Android Studio.

Unikanie:

W moim przypadku wydaje się, że problem wystąpił, ponieważ skopiowałem wklejony projekt, więc 2 projekty miały tę samą nazwę.
Istnieją również inne przyczyny, których poznanie może pomóc użytkownikom uniknąć tego problemu.


Miałem ten sam błąd i po Clean Projekt aplikacja znów działała
Franzi

Pełne czyszczenie / przebudowa również zadziałało. Zrestartowałem podłączone urządzenie pomiędzy dla dobrego pomiaru.
Majestic12

3

Może się tak zdarzyć, ponieważ nazwa twojego pakietu jest zapisana wielkimi literami, więc musisz zmienić ją z powrotem na małe litery.


2

Android studio 2.3.3 U mnie zadziałało po wyłączeniu natychmiastowego uruchamiania w ustawieniach ...

Idź do Ustawienia -> Kompilacja, wykonanie i rozwój -> Natychmiastowe uruchamianie -> Odznacz opcję Włącz natychmiastowe uruchamianie do hotswap, następnie wyczyść projekt i ponownie zbuduj projekt !!


Wyłączenie natychmiastowego uruchamiania w ustawieniach również działało dla mnie.
Michael Nwanna,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.