Unable to execute dex: Mehrere dex-Dateien definieren Lbolts/AggregateException
Ich kenne Mehrere dex-Probleme gemeldet wurden, eine Menge Zeit vor, aber keine der Lösungen scheint zu funktionieren in meinem Fall.
Konsole:
Unable to execute dex: Multiple dex files define Lbolts/AggregateException;
Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lbolts/AggregateException;
Einer der beliebtesten Lösungen ist installiert markieren Sie die "Android private libraries' - container von buildpath. Ich kann das nicht tun, weil es ein paar mehr Bibliotheken, die container, die ich brauche.
Andere Lösung ist installiert markieren Sie alle doppelten Bibliothek explizit Hinzugefügt .jar-form. Ich habe keine solche Bibliotheken.
Die doppelte Bibliothek in meinem Fall ist: android-support-v7-appcompat.jar
Ich habe es (direkt verwiesen wird, die von dem sdk-Ordner) in diesen zwei Behältern:
1.) Android Private Libraries
2.) Android-Abhängigkeiten
Das problem ist, dass ich einfach nicht entfernen Sie die Häkchen bei diesen beiden Container komplett, da beide von Ihnen enthalten weitere notwendige Bibliotheken. Aber ich bin auch nicht entfernen, nur diese doppelte .jar-Datei aus Container.
EDIT:
N. B. Wenn ich die android-support-v7-appcompat library_project zu meinem Projekt, es geht in beide Behälter. Es muss ein Weg gefunden werden, so dass in nur einer.
Kann einer mir helfen wie ich es tun kann?
- Bitte überprüfen Sie, dass alle Ihre Abhängigkeiten nicht bereits enthalten sind android-support-v7-appcompat.jar. Auch sehen Sie in der Strukturansicht auf der linken Seite der Abbildung, dass es zwei android-support-v7-Elemente.
- ich merke das schon. das problem ist, ich bin nicht in der Lage zu entfernen, die doppelte jar-Datei aus container. die einzige option, die ich bekomme, ist zu entfernen, wenn der ganze container (Android-Abhängigkeiten oder Android Private Libraries) Wenn du meinst, ich sollte es löschen aus dem dexedLibs Ordner, das hilft nicht. Sie werden wieder das nächste mal, wenn ich kompilieren. Sie sind die ausführbaren Bytecode
- "Aber ich bin auch nicht entfernen, nur diese doppelte .jar-Datei, die entweder aus den Containern." Warum das? Haben Sie versucht, es zu entfernen aus beiden Behältern, und indem es außerhalb eine eigene Bibliothek?
- ich kann einfach nicht entfernen Sie Sie aus jedem Behälter (oder beides) 🙁 lassen Sie mich versuchen und post screenshot der oder vielleicht, ich weiß nicht wie, der richtige Weg. in der builpath Fenster, wenn ich wählen Sie eine jar-Datei, die Schaltflächen sind ausgegraut
- sehen Sie ein Bildschirmfoto, dass ich in meinem post. Auch in den buildpath Fenster, die Optionen sind ausgegraut
Du musst angemeldet sein, um einen Kommentar abzugeben.
GELÖST IRGENDWIE
bolts-android
Bibliothek war das wirkliche Problem hier. Es wurden zwei verschiedene Versionen es einen Konflikt verursacht. DieFacebookSDK
Bibliothek bringtbolts-android-1.1.2
, undandroid-support-v7-appcompat
bringtbolts-android-1.1.4
.Ich unmarkierten Android Private Libraries container in der
FacebookSDK
- Bibliothek-Projekt, die enthaltenbolts-android-1.1.2
. Als ein Ergebnis, mein Projekt hatte jetzt nur eine versionbolts-android-1.1.4
, die Beilegung des Konflikts. Es läuft jetzt gut.Außerdem stellt sich heraus, das doppelte
android-support-v7-appcompat
Einträge waren kein Problem.begegnete ich diesem vor kurzem auf meinem reagieren native-Projekt, Sie können gehen Sie zu Ihrem android-Ordner Ihres Projekts . und im terminal auf diesen Befehl "./gradlew app:Abhängigkeiten", um zu sehen, Abhängigkeiten-Baum. ich fand zwei-Paket für android-Schrauben unter facebook sdk . schließen Sie dieses Paket von facebook sdk alles wird wieder gut
Dies kann passieren, wenn das hinzufügen von facebook-SDK für Android, können Sie es lösen mit:
wie reagieren die version aktualisiert hat, um 0.31.0,wenn Sie integrieren möchten
com.facebook.fresco:animated-gif:0.10.0
diecom.parse.bolts
hat nun,können Sie dies so tun: