Ich bin nicht sicher, was dieser Fehler bedeutet.
Execution failed for task ':excelSior:packageAllDebugClassesForMultiDex'.
> Java.util.Zip.ZipException: duplicate entry: Android/support/v4/util/TimeUtils.class
Ich verwende derzeit Android-support-v4.jar
für meine Bibliotheken
dependencies {
compile project(':addThisSDK')
compile project(':centeredContentButton')
compile project(':googleplayservices_lib')
compile files('libs/adxtag2.4.6.jar')
compile files('libs/Android-support-v4.jar')
compile files('libs/aws-Android-sdk-1.7.1.1-debug.jar')
compile files('libs/commons-lang-2.6.jar')
compile files('libs/crittercism_v4_4_0_sdkonly.jar')
compile files('libs/dd-plist.jar')
compile files('libs/FiksuAndroidSDK_4.1.1.jar')
compile files('libs/iqengines-sdk-barcode.jar')
compile files('libs/irEventTracker-1.2.jar')
compile files('libs/jolt-core-0.0.7.jar')
compile files('libs/json-utils-0.0.7.jar')
compile files('libs/jsoup-1.7.2.jar')
compile files('libs/kooaba-api-v4-Java.jar')
compile 'com.Android.support:multidex:1.0.0'
}
Fehler wird während der Synchronisierung nicht angezeigt. Nur wenn ich versuche, die Anwendung auszuführen
Was könnte das Problem sein?
Sie müssen überprüfen, ob Sie die v4-Bibliothek eingefügt und die Bibliothek kompiliert haben? Sie dürfen die Bibliothek in Ihrer App oder Ihrem Abhängigkeitsprogramm nicht wiederholen.
löschen Sie die Wiederholungsbibliothek, sodass nur noch eine V4 vorhanden ist.
fügen Sie in Ihrem App-Verzeichnis build.gradle
-Datei den folgenden Befehl hinzu:
Android{
configurations {
all*.exclude group: 'com.Android.support', module: 'support-v4'
all*.exclude group: 'com.Android.support', module: 'support-annotations'
}
}
für mich geht das! Du kannst es versuchen!
Sie haben dies wahrscheinlich bereits behoben, aber nur, damit dies nicht unbeantwortet bleibt... Versuchen Sie, dies zu Ihrem build.gradle
hinzuzufügen:
configurations {
all*.exclude group: 'com.Android.support', module: 'support-v4'
}
Ich bin auch auf dieses freundliche Problem gestoßen, als ich das alte Eclipse-Projekt erneut importierte. Es ist eine alte Abhängigkeit als JAR-Datei im Projekt aufgetreten.
einfach entfernen
compile fileTree (Verzeichnis: 'libs', include: '* .jar')
in gradle datei
und fügen Sie in der Gradle-Datei eine Abhängigkeit hinzu.
Für mich geht das ..
In meinem Fall ist der erwähnte Fehler "doppelte Eingabe" nach dem Setzen von multiDexEnable=true
im build.gradle aufgetreten.
Um den Fehler vollständig zu beheben, werfen Sie einen Blick auf Konfigurieren Sie Apps mit über 64K-Methoden (besonders "Konfiguration Ihrer App für Multidex mit Gradle").
Suchen Sie außerdem nach Vorkommen der Klasse, die den Fehler "Eintrag duplizieren" verursacht, indem Sie in Android Studio Strg + n verwenden. Bestimmen Sie das Modul und die Abhängigkeit, die das Duplikat enthalten, und schließen Sie es vom Build aus, z.
compile ('org.roboguice:roboguice:2.0') {
exclude module: 'support-v4'
}
Ich musste mehrere Moduletiketten ausprobieren, bis es funktionierte. Wenn Sie "support-v4" ausschließen, werden Probleme im Zusammenhang mit "Java.util.Zip.ZipException: doppelter Eintrag: Android/support/v4/*" gelöst.
Ich verstehe, dass es doppelte Verweise auf dieselbe API (wahrscheinlich unterschiedliche Versionsnummern) gibt. Das Debuggen sollte beim Erstellen von der Befehlszeile aus relativ einfach sein.
Versuchen Sie ./gradlew yourBuildVariantName --debug
von der Befehlszeile aus.
Der fehlerhafte Artikel ist der erste Fehler. Ein Beispiel könnte so aussehen:
14:32:29.171 [INFO] [org.gradle.api.Task] INPUT: /Users/mydir/Documents/androidApp/BaseApp/build/intermediates/exploded-aar/theOffendingAAR/libs/google-play-services.jar
14:32:29.171 [DEBUG] [org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter] Finished executing task ':BaseApp:packageAllyourBuildVariantNameClassesForMultiDex'
14:32:29.172 [LIFECYCLE] [class org.gradle.TaskExecutionLogger] :BaseApp:packageAllyourBuildVariantNameClassesForMultiDex FAILED'
Im obigen Fall enthielt die AAR-Datei, die ich in mein libs-Verzeichnis (theOffendingAAR) aufgenommen hatte, die JAR-Datei von Google Play Services (ja, die ganze Sache. Ja, ich weiß.), Während meine BaseApp-Builddatei Standortdienste verwendete:
compile 'com.google.Android.gms:play-services-location:6.5.87'
Sie können das fehlerhafte Element sicher aus Ihren Build-Dateien entfernen, bereinigen und neu erstellen (ggf. wiederholen).
Überprüfen Sie die Versionen Ihrer Abhängigkeiten. Sie müssen kompatible Versionen haben, die speziell auf com.google-Pakete aufmerksam gemacht werden.
compile 'com.google.Android.gms:play-services:8.3.0'
compile 'com.google.Android.gms:play-services-maps:8.3.0'
Beide sind 8.3.0. Wenn Sie eine andere Version haben, löst die Kompilierung diese Ausnahme aus.
Für Expose.class-Fehler
Java.util.Zip.ZipException: doppelter Eintrag: com/google/gson/annotations/Expose.class
verwenden Sie den folgenden Code
configurations {
all*.exclude module: 'gson'
}
Entfernen Sie einfach Ihre Jar-Datei aus den Abhängigkeiten gradle.project als v7 Und führen Sie Ihr Projekt aus
herauszufinden, ob die lib von der unterstützung v4 abhängt, und schließen sie aus.
code in build.gradle
ist wie folgt:
androidTestCompile('com.Android.support.test.espresso:espresso-contrib:2.2.1') {
// http://stackoverflow.com/a/30931887/5210
exclude group: 'com.Android.support', module: 'appcompat'
exclude group: 'com.Android.support', module: 'support-v4'
exclude module: 'recyclerview-v7'
}
In meiner Situation hat die lib 'espresso' ein jar namens support-v4 und in meinem Projekt 'app' die gleiche Unterstützung-v4. Schließen Sie die Unterstützung-v4 aus, wenn Sie Espresso importieren.
PS: Es scheint, dass compile project
nicht mit der exclude
zusammenarbeiten kann.
Das liegt daran, dass Sie eine Bibliothek hinzugefügt und deren Abhängigkeit von einem Modul mehr als einmal angegeben haben.
In meinem Fall hatte ich eine Bibliothek als Modul und als Abhängigkeitsgrad hinzugefügt.
Das Entfernen einer Quelle zum Hinzufügen einer Bibliothek (ich habe die Abhängigkeit von Gradle entfernt) löste mein Problem.
In meinem Fall war der genaue Fehler unten
': Android: transformClassesWithJarMinningForDebug'.
com.Android.build.api.transform.TransformException: Java.util.Zip.ZipException: doppelter Eintrag: com/google/Android/gms/internal/zzqx.class
Ich verwendete eine andere Version von Google Apis, d. H. In einer Modul-Datei
if (!project.hasProperty('gms_library_version')) {
ext.gms_library_version = '8.6.0'
}
jedoch in anderen Modulversionen 11.6.0 wie unten
compile "com.google.Android.gms:play-services-ads:11.6.0"
compile "com.google.Android.gms:play-services-games:11.6.0"
compile "com.google.Android.gms:play-services-auth:11.6.0"
Um dies herauszufinden, habe ich jedoch eine Strg + N in Android Studio eingegeben und den Klassennamen zzqx.class eingegeben. Dann wurden 2 JAR-Dateien angezeigt, die für diese Klasse abgerufen wurden, und ich habe verstanden, dass ich irgendwo Version 8.6.0 verwende. Bei der Änderung von 8.6.0 auf 11.6.0 und dem Neuaufbau des Projekts wurde das Problem behoben.
Hoffe das hilft .
Ich bin mit diesem Problem konfrontiert, da ich das Glas manuell in Bibliotheken kopiert und die Abhängigkeit in der Gradle-Datei erwähnt habe. Sie überprüfen auch in Ihrer Projektstruktur, ob dieselbe JAR-Datei in einen anderen Ordner wie libs oder in einen Projektordner kopiert wird.
In meinem Fall ist der erwähnte Fehler "doppelter Eintrag" nach dem Setzen von "multiDexEnable = true" im build.gradle aufgetreten.
und genauer Fehler, den ich bekam, war unten:
Error:Execution failed for task
':Android:transformClassesWithJarMergingForDebug'.
> com.Android.build.api.transform.TransformException:
Java.util.Zip.ZipException: duplicate entry:
com/google/Android/gms/internal/zzqx.class
Als Erstes suche ich nach einer Klasse, die den Fehler "Eintrag duplizieren" verursacht, indem Sie in Android Studio Strg + N verwenden und nach com/google/Android/gms/internal/zzqx.class suchen. Anschließend wurden 2 Einträge für die gms-Klasse mit einer Version angezeigt 8.4.0 und 1 mit Version 11.6.0.
Um das Problem zu beheben, habe ich sowohl 11.6.0 verwendet als auch ein Beispiel
vorhin
compile "com.google.Android.gms:play-services-games:11.6.0"
compile "com.google.Android.gms:play-services-auth:8.4.0"
compile "com.google.Android.gms:play-services-ads:11.6.0"
Nach dem
compile "com.google.Android.gms:play-services-games:11.6.0"
compile "com.google.Android.gms:play-services-auth:11.6.0"
compile "com.google.Android.gms:play-services-ads:11.6.0"
Neuerstellung behoben.
löschen Sie einfach Android/support/v4/util/TimeUtils.class
Dieses Problem hat mich einen ganzen Tag gekostet. Schließlich habe ich die Version der Firebase-ui-Bibliothek von 2.0.0 auf 1.2.0 heruntergestuft und den folgenden Code in die Datei build.gradle auf Projektebene eingefügt:
allprojects {
repositories {
jcenter()
// Add the following code to your project level build.gradle
maven {
url 'https://maven.fabric.io/public'
}
}
}
Ich habe auch das Problem, weil ich 'com.Android.support:appcompat-v7:24.0.0-alpha1' kompiliert habe, aber ich fügte hinzu: recyclerview liberary compile 'com.Android.support:recyclerview-v7:24.0.2' Ich habe die Version genauso geändert wie Compat (24.0.2 intead von 24.0.0).
ich habe die Antwort. Vielleicht kann es für jemanden helfen.
Für Fehler: Ausführung fehlgeschlagen für Task ': app: transformClassesWithJarMinningForDebug' com.Android.build.api.transform.TransformException Java.util.Zip.ZipException doppelter Eintrag com/google/gson/annotations/Expose.class
Folgendes habe ich getan:
1) Löschen Sie die Datei gson-2.5.jar . 2) Konfigurationen {alle * .exclude-Module: 'gson-2.5'}
Ich hatte das gleiche Problem nach dem Upgrade des Android SDK. Ich konnte die Anwendung in buildToolsVersion '23.0.1'
ausführen. Die gleiche Fehlermeldung wurde bei buildToolsVersion '24.0.3'
angezeigt.
Ich habe das Problem durch Aktualisieren meiner Java-Version von 1.7 auf 1.8 mit compileSdkVersion 24
behoben.
Bei mir ist etwas Ähnliches passiert, als ich versehentlich hinzugefügt hatte
apply plugin: 'kotlin-Android'
zu meinem Android-Bibliotheksmodul. Das Entfernen der Linie behebt das Problem.