2016-07-25 12 views
8

Ich bekomme diese Fehler in meiner Android-App und hier ist der LogCat.Doppelte WebRTC-Klasse in Android

> Error:Execution failed for task 
> ':android:transformClassesWithJarMergingForDebug'. 
> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: 
> org/webrtc/voiceengine/WebRtcAudioRecord.class 

Ich versuche, eine zweite WebRTC meines Android-App zu integrieren, ich habe in meinem Projekt integriert TokBox Glas und jetzt auch vSiehe SDK in App zu setzen, ich versuche, ich vermute, beide haben WebRTC Bibliotheken, also bekomme ich diesen doppelten Fehler, aber ich finde keinen Weg, 1 davon auszuschließen, um den doppelten Fehler zu beheben.

Bisher habe ich versucht, dies auf meiner App Gradle Build hinzuzufügen.

> exclude group: 'org.webrtc' 

Aber es funktioniert nicht, kann mir jemand dabei helfen? Danke im Voraus!

+0

Haben Sie irgendeine Lösung, weil ich auch das gleiche Problem habe. – Jeevanandhan

+0

Ich bekomme ein ähnliches Problem mit dem Protokoll: ** Fehler: Ausführung fehlgeschlagen für Task ': app: transformClassesWithJarMergingForProudctDebug'. > com.android.build.api.transform.TransformException: java.util.zip.ZipException: Eintrag duplizieren: org/webrtc/voitengine/BuildInfo.class ** Hast du eine Antwort darauf erhalten? – CoDe

Antwort

0

Ich habe gerade den gleichen Fehler. herausgekommen, in meinem Fall war es einfach wie geschrieben: "duplizieren". Ich hatte die gleiche "compile" -Zeile auf "build.gradle" - "Abhängigkeiten". Es war immer da, der Fehler begann zu springen, nachdem ich Android Studio (2.2) und Graple-Version ('Klassenpfad' com.android.tools.build:gradle.2.2.0 ') aktualisiert

Ich entfernte eines der Duplikate Linien und der Fehler war weg.

+0

Ihre Antwort wurde auf einem anderen Forum plagiiert http://asktoanswer.com/questions/duplicate-webrtc-class-in-android/ –

0

Überprüfen Sie, dass keine Ihrer Abhängigkeiten z. Sie haben kein Modul A, das von X 1.0 und Y 1.0 abhängt, aber X 1.0 hängt von Y 2.0 ab.

Oder ich habe gefunden, eine einfache Reinigung und Wiederaufbau behebt einen ähnlichen Fehler.

0

Versuchen Sie, ./gradlew clean im Stammordner zu erstellen und neu zu erstellen. Wenn das nicht funktioniert, führen Sie ./gradlew app:dependencies oder ./gradlew assembleDebug --debug aus, um die Abhängigkeitskonflikte herauszufinden, damit Sie die doppelte Klasse ausschließen können.

+0

So kenne ich Abhängigkeit und Ursache von Konflikten. In meinem Fall verwende ich zwei WebRTC-basierte Lösungen auf der dritten Seite und beide verwenden den gleichen Klassennamen ** BuildInfo.class **, und dies verursacht das Problem. Irgendein Vorschlag ? – CoDe

+0

Die doppelten Klassennamen sollten kein Problem sein, wenn die Paketnamen unterschiedlich sind. Vielleicht hängen beide von einer anderen Version einer Bibliothek ab? –

+0

, aber das ist tatsächlich Ursache, Sie sehen, dass ich oben im Kommentar hinzugefügt habe. ** Eintrag doppelt: org/webrtc/votengine/BuildInfo.class ** – CoDe