我的Android进阶之旅------>解决:Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'.

来源:互联网 发布:进口牛奶推荐 知乎 编辑:程序博客网 时间:2024/05/21 00:49

错误描述

今天在Android Studio项目中加入了jackson的开发包,编译运行时候,引发了如下的错误:

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/NOTICE    File1: D:\Code\XTCKuwoWatch\app\libs\jackson-core-2.4.4.jar    File2: D:\Code\XTCKuwoWatch\app\libs\jackson-databind-2.4.4.jar
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

错误截图如下所示:

错误截图


解决办法

看起来是因为多个 jar 包里包含了同样的文件(NOTICE.txt),导致打包时因为担心相互覆盖问题而提示出错。 尝试下在 app 下的 build.gradle 中的 android 部分增加一段配置,如下面这段代码所示:

packagingOptions {        exclude 'META-INF/LICENSE'        exclude 'META-INF/NOTICE'    }
  • 1
  • 2
  • 3
  • 4
  • 1
  • 2
  • 3
  • 4
  • 没修改前的build.gradle文件
apply plugin: 'com.android.application'android {    compileSdkVersion 22    buildToolsVersion "22.0.1"    defaultConfig {        applicationId "com.oyp.csdn"        minSdkVersion 16        targetSdkVersion 23        versionCode 1        versionName "1.0"    }    buildTypes {        release {            minifyEnabled false            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'        }    }}dependencies {    compile fileTree(dir: 'libs', include: ['*.jar'])}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25

  • 修改后的build.gradle文件
apply plugin: 'com.android.application'android {    compileSdkVersion 22    buildToolsVersion "22.0.1"    packagingOptions {        exclude 'META-INF/LICENSE'        exclude 'META-INF/NOTICE'    }    defaultConfig {        applicationId "com.oyp.csdn"        minSdkVersion 16        targetSdkVersion 23        versionCode 1        versionName "1.0"    }    buildTypes {        release {            minifyEnabled false            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'        }    }}dependencies {    compile fileTree(dir: 'libs', include: ['*.jar'])}
1 0
原创粉丝点击