Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Gradle pone archivos duplicados en el archivo apk

Estoy usando gradle 1.10 y la versión del complemento android es 0.8.0. Mis proyectos de Android necesitan estos dos tarros: jackson-core-asl-1.9.11.jar y jackson-mapper-asl-1.9.11.jar . Añado los archivos así:

 dependencies { compile files('libs/jackson-core-asl-1.9.11.jar') compile files('libs/jackson-mapper-asl-1.9.11.jar') } 

Durante gradle build consigo un mensaje de error diciendo que estos dos archivos están duplicados en META-INF/ASL2.0 . Resolví el problema excluyendo los siguientes archivos:

  • ¿Cómo obtener un Fragmento para eliminar a sí mismo, es decir, su equivalente de finish ()?
  • No se puede reducir la ráfaga con proguard
  • Cómo obtener prefijo telefónico de país de iso
  • Tamaño de la barra de notificación de Android y barra de título?
  • Android: reproducir audio desde el auricular
  • ¿Cuál es la forma correcta de implementar el par clave-valor en Spinner en android
  •  packagingOptions { exclude 'META-INF/ASL2.0' exclude 'META-INF/LICENSE' exclude 'META-INF/NOTICE' exclude 'META-INF/LICENSE.txt' exclude 'META-INF/NOTICE.txt' exclude 'META-INF/notice.txt' exclude 'META-INF/license.txt' } 

    Tengo que excluir todos ellos porque aparentemente hay un archivo duplicado en todos ellos.

    Me gustaría saber por qué se produce este problema. ¿Es un error del plugin de Android o el propio gradle? ¿Puede causar problemas la exclusión de los archivos anteriores? ¿Acabo de excluir los frascos arriba mencionados o hay algo más en esos archivos META-INF? No quiero excluir nada de lo que mi proyecto necesita

  • ¿Cómo iniciar la transición de elementos compartidos usando Fragmentos?
  • Pruebe un sitio web para móviles para Android o BlackBerry
  • Android Studio muestra Errores (Traducción perdida) después de actualizar
  • Alinear texto alrededor del centro vertical de ImageSpan
  • ¿Cuál es la ruta predeterminada de debug.keystore en Mac?
  • ¿Cómo obtener el número total de líneas en un proyecto de Android Studio?
  • 2 Solutions collect form web for “Gradle pone archivos duplicados en el archivo apk”

    Aquí hay información del equipo de Jackson https://github.com/FasterXML/jackson-databind/issues/214

    Hay una variedad de mensajes sobre esto en SO, como éste: Error al generar el archivo final: Encontró un archivo duplicado para APK: LICENSE.txt

    He usado Jackson con Eclipse y Ant también (y actualmente lo estoy usando en Studio con la misma solución que estás usando), y tuve que usar zip en el comando para cambiar el nombre del archivo license.txt. Hay más información acerca de todo esto (incluyendo un ejemplo de usar zip para cambiar el nombre del archivo) en esta publicación Android Gradle plugin 0.7.0: "archivos duplicados durante el embalaje de APK" .

    No he encontrado nada que indique que renombrar o excluir estos archivos tendrá consecuencias negativas, y nunca he experimentado ningún problema en cerca de 2 años de usar Jackson con Eclipse y Ant.

    En primer lugar esto no es un error de gradle. Se produce en la tarea MergeJavaResourcesTransform: Introduzca aquí la descripción de la imagen

    Introduzca aquí la descripción de la imagen

    Como sabemos, APK es sólo un archivo zip, por lo que cuando se pone META-INFO / xxx en el archivo zip, si el archivo se ha agregado antes, no podemos volver a ponerlo.

    Y no hay reglas de fusión para los archivos META-INFO, por lo que sólo podemos agregar en el archivo que los nombres AVISO etc

    Introduzca aquí la descripción de la imagen

    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.