Ich versuche, eine alte Anwendung für die Arbeit zu bauen und zu pflegen, aber ich kann nicht über die Build-Phase. In meiner app/build.gradle
Datei habe ichAndroid Gradle kompilieren commons-io erstellt Duplikate in Bibliotheksbaum
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.apache.commons:commons-io:1.3.2'
//some more libraries compiled as well
}
aber die folgende Fehlermeldung erhalten, wenn auszuführen versuchen:
Error:Execution failed for task ':myApp'. com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: org/apache/commons/io/CopyUtils.class
Dies ist fast sicher, weil, wenn ich das Glas kompilieren, an der Spitze meiner externen Bibliotheken Baum, dies wird generiert:
, warum dies geschieht, und wie kann ich es bekommen zu stoppen, so kann ich den Build abgeschlossen?
Es scheint Commons-io selbst zu sein. Wenn ich das hinterlasse, verschwinden beide Versionen aus der Bibliothek. Ich werde den Exclude zu seiner eigenen Kompilation hinzufügen, aber das scheint irgendwie kontraintuitiv zu sein ... – Csteele5
Ich vermute, dass es der Fehler dieser Zeile ist: 'compile fileTree (dir: 'libs', include: ['* .jar' ]) 'Haben Sie ein libs-Verzeichnis mit Gläsern? – rekire