Android:Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.

本文介绍了解决Android项目因多个jar包包含相同文件而导致的编译错误的方法。通过在build.gradle文件中添加特定配置排除重复文件,成功解决了打包过程中出现的DuplicateFileException异常。

  今天开发Android项目时,导入了http有关架包后,程序编译报错如下:

1 Error:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.
2 > com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/LICENSE
3     File1: G:\Android\LRWebService\app\libs\httpcore-4.4.1.jar
4     File2: G:\Android\LRWebService\app\libs\httpclient-4.4.1.jar

  报错信息截图如下:

         

  观察错误提示后得到错误原因:

    因为多个 jar 包里包含了同样的文件(LICENSE.txt),导致打包时因为担心相互覆盖问题而提示出错。

  尝试下在 app 下的 build.gradle 中的 android 部分增加一段配置,如下面这段代码所示:

1 packagingOptions {
2     exclude 'META-INF/LICENSE'
3     exclude 'META-INF/DEPENDENCIES'
4 }

  具体加的位置如图所示位置:

                  

  重新编译后,启动成功!

转载于:https://www.cnblogs.com/fx-blog/p/7738078.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值