Kann nicht ausgeführt werden dex: Mehrere Dex-Dateien definieren Lcom / actionbarsherlock / R $ attr

8

Ich habe ein Bibliotheksprojekt für meine App erstellt. Wenn ich versuche, die Bibliothek einem Projekt hinzuzufügen, erhalte ich den folgenden Fehler, wenn ich versuche, sie auszuführen:

%Vor%

Ich habe die HoloEverywhere-Bibliothek zu meiner Bibliothek hinzugefügt, während ich HoloEverywhere die ActionBarSherlock-Bibliothek hinzugefügt habe. Ich verwende Eclipse unter Windows 7.

Obwohl ich das SDK auf die neueste Version aktualisiert, Eclipse neu gestartet und die verschiedenen Projekte bereinigt habe, bleibt der Fehler bestehen.

Hat jemand eine Idee, wie Sie diesen Fehler beheben können? Mein bin dir ist nicht enthalten zum Build-Pfad unter Eigenschaften, und ich habe versucht, den bin-Ordner vollständig löschen .

Danke!

    
Andreas H 07.02.2013, 02:35
quelle

12 Antworten

5

Ich habe die Ursache des Fehlers in / bin / classes lokalisiert. Wenn ich das Verzeichnis / classes vor dem Ausführen der App gelöscht habe, würde die App kompiliert und ausgeführt. Natürlich, als ich versuchte, die App tatsächlich zu exportieren, würde das / class dir zurückkommen und damit auch der Fehler.

Die Lösung für mein Problem bestand darin, die neueste Version von Eclipse zu installieren. Wenn ich die App über die neueste Eclipse-Installation exportiere oder ausführe, wird der Ordner / classes jetzt nicht angezeigt.

    
Andreas H 07.02.2013, 21:55
quelle
18

Ich fand, dass, wenn ich in Eigenschaften ging - & gt; Java-Buildpfad - & gt; Bestelle und exportiere und entferne die Android Private Libraries, dann ist mein Projekt gut gebaut. Es gab ein anderes Support-v4-jar, das mit Action-Bar-sherlocks-Support-v4-Bibliothek

in Konflikt stand     
Chriskot 14.08.2013 17:54
quelle
8

Dieses Problem passiert mir beim Erstellen einer Bibliothek in Verbindung mit actionbarsherlock. In diesem Fall erstellt die Eclipse das R von Sherlock in meiner Bibliothek und im Projekt, das es verwendet.

Die Lösung ist Löschen in Ihrem Bibliothek Bin-Ordner nur den Ordner actionbarsherlock, der die R-Klassen enthält. Diese Inst erstellen Sie mehr und ist nur in Ihrer Projekt-App vorhanden.

    
thalespf 07.04.2013 02:49
quelle
3

Das Problem für mich waren doppelte Klassendateien. Ich hatte sowohl das Paket selbst als auch das jar sdk des Pakets (im Ordner libs) im selben Projekt.

    
jony 30.04.2013 12:28
quelle
3

Das ist mir passiert, nachdem ich ein normales Android-Projekt in ein Bibliotheksprojekt umgewandelt habe, um es für eine Free / Paid-Projektaufteilung zu verwenden.

Wenn eines der Free / Paid-Projekte ausgeführt wird, führt dies zu einem OP-Fehler.

Das Problem war, dass das Kompilationsmaterial übrig geblieben war, als das Basisprojekt ein normales Projekt und kein Bibliotheksprojekt war. Säubern Sie einfach den Arbeitsbereich und erstellen Sie alle Projekte neu. Alter Kompilierungs-Junk wird entfernt und alles wird in korrekte Bibliotheken kompiliert. Versuchen Sie, das Projekt erneut auszuführen, das den Fehler verursacht hat, und jetzt sollte alles in Ordnung sein.

    
methical 14.09.2013 22:42
quelle
2

Achten Sie darauf, dass beide Projekte (die Bibliothek und die App) nicht den gleichen Paketnamen (im AndroidManifest) haben

    
Ton Snoei 18.06.2013 12:30
quelle
1

Ich hatte das gleiche Problem heute. Ich löschte die .apk-Datei in / bin, schien es zu beheben.

    
Matthew Shearer 09.02.2013 13:19
quelle
0

Entfernen Sie alle Bibliotheken aus Build Path und importieren Sie das Bibliotheksprojekt, das Sie implementieren möchten. Das funktioniert problemlos ..

    
user2918326 25.10.2013 02:54
quelle
0

Sie können Tattletale

verwenden

Es hilft Ihnen, doppelte Klassen in Ihren JAR-Dateien zu identifizieren.

Ich hoffe, es hilft.

    
Jorge E. Hernández 08.08.2014 05:01
quelle
0

Für Android Studio - Ich habe doppelte .jar-Importe entfernt und es wurde aufgelöst.

Details: Ich hatte eine App, die einen Basis- / gemeinsamen Ordner hatte und dann zwei Ordner, die davon geerbt wurden - eine kostenlose und kostenpflichtige Version der App. Das Problem wurde verursacht, als ich den / common-Ordner und den / free-Ordner hatte, die beide dieselbe crystaltics JAR-Datei in der Projektstruktur enthalten.

    
gnB 29.01.2015 22:00
quelle
0

Für mich bestand die Lösung darin, jede JAR -Datei im "bin" -Ordner / Verzeichnis zu löschen.

    
Amin SZ 16.05.2015 08:13
quelle
0

Wenn Ihr Projekt auf ein Bibliotheksprojekt verweist, prüfen Sie bitte, ob das Bibliotheksprojekt dieselben Bibliotheken hat, die Sie in Ihrem Projekt verwenden, aber verschiedene Versionen . Verwenden Sie die gleichen Versionen überall und alles sollte in Ordnung sein!

    
Taras 27.05.2015 15:24
quelle