Java.util.zip.ZipException: entrada duplicada durante packageAllDebugClassesForMultiDex
No estoy seguro de lo que significa este error.
Execution failed for task ':excelSior:packageAllDebugClassesForMultiDex'. > java.util.zip.ZipException: duplicate entry: android/support/v4/util/TimeUtils.class
Actualmente estoy usando android-support-v4.jar
para mis bibliotecas
- Cómo agregar la vista de reciclar en el diseño xml
- ¿Cómo utilizar el soporte FileProvider para compartir contenido con otras aplicaciones?
- Corregir Error en styles.xml para generar R.java: Ningún recurso encontrado nombre 'Theme.AppCompat.Light'
- Necesita deshabilitar expandir CollapsingToolbarLayout para ciertos fragmentos
- Impedir que RecyclerView se desplace en AppBarLayout antes de que AppBarLayout se colapse.
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' }
El error no aparece durante la sincronización gradle. Justo cuando intento ejecutar la aplicación
¿Cual podría ser el problema?
- Cardview esquina fondo no transparente
- Implementación del menú de acción flotante mediante el botón de acción Float de Android Design Support library
- Actualizado a AppCompat v22.1.0 y ahora obtener "eliminar atributo" error
- java.lang.NoSuchMethodError: No hay un método estático getDrawable (Landroid / content / Context; I) Landroid / graphics / drawable / Drawable;
- Cambiar color de sugerencia de EditText cuando se utiliza TextInputLayout
- Biblioteca de soporte de Android: getDrawable independiente si vector o no
- TextInputLayout La sugerencia no flotará después de actualizar la biblioteca de asistencia de Google
- ViewHolder.getAdapterPosition () devuelve siempre -1
Necesita comprobar que tiene la biblioteca de inserción v4 y la biblioteca de compilación. No debe tener biblioteca repetida en su aplicación o su programa de dependencia.
Elimine la biblioteca de repetición para que sólo quede un V4.
En su archivo de aplicación dir build.gradle
agregue este comando:
android{ configurations { all*.exclude group: 'com.android.support', module: 'support-v4' all*.exclude group: 'com.android.support', module: 'support-annotations' } ]
¡esto funciona para mi! ¡Puedes probarlo!
Probablemente has arreglado esto ahora pero solo para que esto no quede sin respuesta, intenta agregar esto a tu build.gradle
:
configurations { all*.exclude group: 'com.android.support', module: 'support-v4' }
También me encontré con este problema de tipo cuando re importación eclipse proyecto antiguo. Se produjo alguna antigua dependencia como archivo jar en el proyecto.
Solo quita
Compile fileTree (dir: 'libs', incluya: '* .jar')
En el archivo gradle
Y añadir dependencia en el archivo gradle.
Esto funciona para mi ..
En mi caso, el mencionado error de "entrada duplicada" se presentó después de establecer multiDexEnable=true
en el build.gradle.
Con el fin de resolver completamente el error primero de todo echar un vistazo a Configurar aplicaciones con métodos de más de 64 KB (espescially "Configuración de su aplicación para Multidex con Gradle").
Además, busca las ocurrencias de la clase que causa el error de "entrada duplicada" usando ctrl + n en Android Studio. Determinar el módulo y la dependencia que contiene el duplicado y excluirlo de la compilación, por ejemplo:
compile ('org.roboguice:roboguice:2.0') { exclude module: 'support-v4' }
Tuve que probar múltiples etiquetas de módulo hasta que funcionó. Excluir "support-v4" soluciona problemas relacionados con "java.util.zip.ZipException: entrada duplicada: android / support / v4 / *"
Mi comprensión es que hay referencias duplicadas a la misma API (Probablemente diferentes números de versión). Debe ser razonablemente fácil de depurar al construir desde la línea de comandos.
Intente ./gradlew yourBuildVariantName --debug
desde la línea de comandos.
El elemento ofensivo será el primer fallo. Un ejemplo podría ser:
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'
En el caso anterior, el archivo aar que había incluido en mi directorio libs (theOffendingAAR) incluía el archivo jar de Google Play Services (sí, todo lo que sí, sí.) Mientras que mi base de base de compilación utilizaba los servicios de ubicación:
compile 'com.google.android.gms:play-services-location:6.5.87'
Puede eliminar con seguridad el elemento ofensivo de los archivos de compilación, limpiar y reconstruir (repita si es necesario).
Simple Eliminar el archivo Jar de dependencias gardle.project como v7 y ejecutar su proyecto
Compruebe las versiones de sus dependencias, debe tener versiones compatibles poner atención especialmente a los paquetes de com.google, debe tener la misma versión como:
compile 'com.google.android.gms:play-services:8.3.0' compile 'com.google.android.gms:play-services-maps:8.3.0'
Ambos son 8.3.0, si usted tiene otra compilación de la versión lanzará esa excepción.
Para el error Expose.class es decir
Java.util.zip.ZipException: entrada duplicada: com / google / gson / annotations / Expose.class
Usa el siguiente código
configurations { all*.exclude module: 'gson' }
Averigua que el lib depende del soporte v4, y lo excluye.
Código en build.gradle
es así:
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' }
En mi situación, el lib 'espresso' tiene un tarro llamado support-v4 y en mi proyecto 'app' tiene el mismo soporte-v4, excluye el soporte-v4 al importar espresso.
PS: parece que el compile project
no puede trabajar con la exclude
He enfrentado este problema como he copiado manualmente el frasco en libs, así como mencionó la dependencia en el archivo gradle. También comprueba la estructura del proyecto, ya sea que el mismo archivo jar se copie en cualquier otra carpeta como libs o en la carpeta del proyecto.
Tuve el mismo problema después de actualizar el androide SDK. Pude ejecutar la aplicación en el buildToolsVersion '23.0.1'
, recibí el mismo error cuando cambié a buildToolsVersion '24.0.3'
He resuelto el problema mediante la actualización de mi versión de java de 1,7 a 1,8 con compileSdkVersion 24
Este problema me costó un día entero. Finalmente bajé la versión de la biblioteca firebase-ui de 2.0.0 a 1.2.0 y agregué el código siguiente dentro del archivo build.gradle de nivel de proyecto:
allprojects { repositories { jcenter() // Add the following code to your project level build.gradle maven { url 'https://maven.fabric.io/public' } } }
Esto se debe a que ha agregado una biblioteca y ha dado su dependencia de un módulo más de una vez.
En mi caso, había añadido una biblioteca como un módulo y como una dependencia gradle tanto.
La eliminación de una fuente de la adición de la biblioteca (he eliminado gradle dependencia) resuelto mi problema.
Prueba esto:
android { configurations { all*.exclude module: 'PhotoView' //去除重复依赖库} }
Para error: Error de ejecución para la tarea ': app: transformClassesWithJarMergingForDebug' com.android.build.api.transform.TransformException java.util.zip.ZipException entrada duplicada com / google / gson / annotations / Expose.class
Esto es lo que hice:
1) Elimine el archivo gson-2.5.jar. 2) configuraciones {todo * .exclude module: 'gson-2.5'}
provided 'com.alibaba:fastjson:1.2.17'
Yo uso siempre, este tarro participar en la construcción, no utilizar en tiempo de ejecución
- Androide. WebView y loadData
- Sustitución de un fragmento por otro fragmento dentro del grupo de actividad