[已解决]重复文件导致无法打包apk

来源:互联网 发布:mac系统能玩什么网游 编辑:程序博客网 时间:2024/06/13 21:37

重复文件导致无法打包apk

在eclipes工程转到Android studio下打开时,遇到了文件重复导致无法生成apk的问题。
先来看错误提示:

Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.> com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/LICENSE    File1: D:\AS workspace\code\app\libs\jackson-core-asl-1.9.7.jar    File2: D:\AS workspace\code\app\libs\jackson-mapper-asl-1.9.7.jar

问题原因

在jar包jackson-core-asl-1.9.7.jar和jackson-mapper-asl-1.9.7.jar中,同时包含了一个LICENSE的文件,导致打包时因为担心相互覆盖问题而提示出错,如下图所示:
这里写图片描述

解决方法

在 app 下的 build.gradle 中的 android 部分增加一段配置:

packagingOptions {    exclude 'META-INF/LICENSE'}

同理,如果出现其他提示:

Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.> com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/ASL2.0    File1: D:\AS workspace\code\app\libs\jackson-core-asl-1.9.7.jar    File2: D:\AS workspace\code\app\libs\jackson-mapper-asl-1.9.7.jar

只需要在packagingOptions中再添加上就可以解决:

packagingOptions {        exclude 'META-INF/ASL2.0'        exclude 'META-INF/LICENSE'    }

参考链接:https://segmentfault.com/q/1010000002397220/a-1020000002397606

阅读全文
0 0