Split lib_main wurde mehrfach definiert

102

Split lib_main wurde mehrfach definiert

In "com.android.tools.build:gradle:2.0.0-alpha3" Build-Erfolg, aber die Fehler, die in "com.android.tools.build:gradle:2.0.0-alpha5" auftreten.

Konsolenfehler


endlich sofort laufen !! com.android.tools.build:gradle:2.0.0-alpha8 und gradle.properties "org.gradle.jvmargs = -Xmx8g" wurden zur Änderung aufgelöst.

Shinhyo
quelle
Genau das gleiche Problem haben. Verwenden Sie zufällig Produktaromen und applicationIdSuffix?
Michael De Soto
Verwenden Sie leider nicht "Produktaromen" und "applicationIdSuffix". aber mit "MultiDex".
Shinhyo
6
Der gleiche Fehler hier, das Deaktivieren des Sofortlaufs hilft. Passiert nur für Geräte, auf denen Android 6 ausgeführt wird. Android Studio 2.0 5 Verwenden von applicationIdSuffix, MultiDex, Verwenden von Produktvarianten
Happy Dev
1
@Happydev Gelöst durch Deaktivieren von Instantrun!
Shinhyo
1
@bkurzius es scheint mir keine Lösung zu sein, der ganze Punkt der Aktualisierung wurde sofort ausgeführt. Ich hoffte, jemand wird so etwas wie eine Bibliothek oder ein Plugin entfernen ... weil Instant Run auf Marshmallow in einem anderen Projekt fantastisch funktioniert.
Happy Dev

Antworten:

103

Für diejenigen, die sich fragen, was InstantRun ist (erste Einstellung im Bild): Geben Sie hier die Bildbeschreibung ein

Und ja, das Deaktivieren dieser Einstellung behebt das Problem.

Bearbeiten 19.01.16

'com.android.tools.build:gradle:2.0.0-alpha6' wurde vor drei Tagen veröffentlicht. Mit dieser neuen Version ist der Fehler "Split lib_main wurde mehrfach definiert" verschwunden und die Installation der App ist erfolgreich, aber jetzt wird ein Laufzeitfehler angezeigt:

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

Durch Deaktivieren des Sofortlaufs wird dieser Fehler behoben. Warten wir auf com.android.tools.build:gradle:2.0.0-alpha7 ...

Bearbeiten 25.01.16

'com.android.tools.build:gradle:2.0.0-alpha7' wurde vor zwei Tagen veröffentlicht.

Die gleiche Ausnahme wie bei 2.0.0-alpha6

Emanuel Moecklin
quelle
2
Nun,
2
Ich verbringe immer mehr Zeit damit, gegen das Build-System zu kämpfen. Es ist, als ob die Android-Entwicklung immer mehr auf Build / Deployment ausgerichtet und weniger codiert wird ... Schade wirklich, weil mir die Flexibilität des Gradle-Build-Systems gefällt.
Emanuel Moecklin
1
gut, wenn sie sofort laufen können, wäre es den Schmerz wert, aber bisher war meine Erfahrung damit nicht gut :-(
bkurzius
Selbst in anderen Apps, die mit sofortiger Ausführung ausgeführt werden, musste ich sie deaktivieren. Es gibt zu viele Fälle, in denen der Sofortlauf einfach nicht funktioniert. Immer noch Alpha, denke ich ...
Emanuel Moecklin
Danke .. Ich habe dies auf Stall
Version
161

Löschen Sie einfach den build Ordner des appModuls und erstellen Sie das Projekt neu!

Dies wird das Problem beheben!.

AskQ
quelle
2
Toll! Dies sollte als die richtige Lösung markiert werden. Vielen Dank
Hernan Arber
1
Hat funktioniert! Nur AVD neu zu erstellen und neu zu starten hat nicht geholfen!
MatejC
1
Sollte "Caches ungültig machen und neu starten" nicht auch den Build ungültig machen? Weil es in diesem Fall
offensichtlich
Das Deaktivieren ist nicht der bevorzugte Weg. Der Build-Ordner muss nicht gelöscht werden. Erstellen Sie einfach das Projekt neu.
Vaibhav
48

Ich bin auf dieses Problem gestoßen, nachdem ich den App-Namen in Gradle überarbeitet und geändert hatte. Dem Beispiel von AskQ folgend, habe ich das Projekt neu aufgebaut (auf einem etwas anderen Weg):

Build-> Clean Project

gefolgt von

Build-> Rebuild Project

Das Problem wurde behoben

Tony Gil
quelle
11

Wiederherstellung:

Das Löschen des Ordners (projectFolder) / app / build und das Neuerstellen haben bei mir funktioniert. (wie von @AskQ beantwortet)

Ich frage mich, ob Build> Clean Project auch funktioniert hätte. aus den Android Studio GUI-Menüs.

Vermeidung:

In meinem Fall scheint das Problem aufgetreten zu sein, weil ich ein Projekt kopiert und eingefügt habe, sodass 2 Projekte denselben Namen hatten.
Es gibt auch andere Ursachen: Wenn Sie lernen, was sie sind, können Sie diese Bedenken vermeiden.

Brian Davis
quelle
Ich hatte den gleichen Fehler und nach Clean Projekt funktionierte die App wieder
Franzi
Eine vollständige Reinigung / Umbau hat auch für mich funktioniert. Starten Sie das angeschlossene Gerät zwischendurch neu.
Majestic12
3

Dies kann passieren, weil Ihr Paketname in Großbuchstaben geschrieben ist. Sie müssen ihn daher wieder in Kleinbuchstaben ändern.

Raja Nurfarahin Farhanah
quelle
2

Android Studio 2.3.3 Es hat bei mir funktioniert, nachdem Instant Run in den Einstellungen deaktiviert wurde ...

Gehen Sie zu Einstellungen -> Erstellen, Ausführen und Entwickeln -> Sofortiger Lauf -> Deaktivieren Sie Sofortiger Lauf für Hotswap aktivieren, bereinigen Sie das Projekt und erstellen Sie Ihr Projekt erneut!

Suhas
quelle
Das Deaktivieren des Sofortlaufs in den Einstellungen hat auch bei mir funktioniert.
Michael Nwanna