错误:任务执行失败':app:transformClassesWithJarMergingForDebug'

时间:2015-10-19 08:15:37

标签: android compiler-errors

美好的一天。 在AndroidStudio中更新谷歌存储库后,我遇到了一个问题

> Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
> com.android.build.transform.api.TransformException: java.util.zip.ZipException: duplicate entry:
> android/support/v7/cardview/BuildConfig.class

我正在尝试从播放服务中排除组android.support,但它没有帮助。 当我在另一台PC上开始我的项目时,我有:

> Error:Execution failed for task  ':app:transformClassesWithJarMergingForDebug'.
> com.android.build.transform.api.TransformException: java.util.zip.ZipException: duplicate entry:
> android/support/annotation/AnimRes.class

我的build.gradle:

apply plugin: 'com.android.application'
apply plugin: 'com.android.databinding'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"

    defaultConfig {
        applicationId "ru.alexeyk.myevents"
        minSdkVersion 14
        targetSdkVersion 23
        versionCode 16
        versionName "1.121"
        multiDexEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile('com.github.nkzawa:socket.io-client:0.4.2') {
        exclude group: 'org.json', module: 'json'
    }
    compile files('libs/sentry-1.1.4.jar')
    compile 'com.android.support:appcompat-v7:23.1.0'
    compile 'com.android.support:support-annotations:23.1.0'
    compile 'com.android.support:design:23.1.0'
    compile 'com.android.support:support-v4:23.1.0'
    compile 'com.android.support:cardview-v7:23.1.0'
    compile 'com.android.support:recyclerview-v7:23.1.0'
    compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.4'
    compile 'com.github.machinarius:preferencefragment:0.1.2'
    compile 'com.edmodo:cropper:1.0.1'
    compile 'com.makeramen:roundedimageview:2.1.1'
    compile 'org.ocpsoft.prettytime:prettytime:4.0.0.Final'
    compile 'com.yandex.android:mobmetricalib:2.00@aar'
    compile 'com.google.android.gms:play-services:8.1.0'
    compile 'com.google.android.gms:play-services-ads:8.1.0'
    compile 'com.google.android.gms:play-services-analytics:8.1.0'
    compile 'com.google.android.gms:play-services-identity:8.1.0'
    compile 'com.google.android.gms:play-services-gcm:8.1.0'
}

11 个答案:

答案 0 :(得分:71)

在终端执行根项目文件夹中:

./gradlew clean

它帮助了我。

答案 1 :(得分:16)

AndroidStudio 菜单:

  

建造/清洁项目

更新旧的依赖项

答案 2 :(得分:15)

以上所有不适合我..因为我使用 Facebook广告依赖..

如果有人使用此依赖编译'com.facebook.android:audience-network-sdk:4.16.0'

尝试使用此代码代替上面的

compile ('com.facebook.android:audience-network-sdk:4.16.0'){
exclude group: 'com.google.android.gms'
}

答案 3 :(得分:9)

打开系统命令提示符/终端 - >转到项目文件夹路径(根项目文件夹) - >执行以下命令:command: - gradlew clean./gradlew clean

确保您的所有gradle依赖项都是相同的版本。 - >示例: - 您的appcompat和recyclerview依赖项应该具有相同的版本。

- >将您的gradle依赖项更改为相同的版本,如: -

compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.android.support:recyclerview-v7:23.4.0'
compile 'com.android.support:cardview-v7:23.4.0'

- >重建你的项目,它会正常工作。

答案 4 :(得分:6)

在终端中使用项目根,如下所示: - / Users / rajnish / Desktop / RankProjects / ProjectCloud

之后输入命令./gradlew clean

它会起作用。

答案 5 :(得分:5)

报告问题可能有不同的原因,在升级工作室之后,几天前也面临这个问题'重复jar'。从所有stackoverflow我尝试了所有的建议,但没有任何对我有用。

但这肯定会有一些重复的jar,对我而言,它存在于一个库libs文件夹以及项目libs文件夹中。所以我从项目libs文件夹中删除了,因为这里不需要它。因此在更新工作室时要小心,并尝试了解所有的gradle错误。

答案 6 :(得分:1)

我收到此错误,因为我的build.gradle中没有正确的行。我正在使用org.apache.http.legacy.jar库,这需要:

android{
   useLibrary 'org.apache.http.legacy'

   ...
}

因此,请检查您的gradle文件中是否包含所需内容。

答案 7 :(得分:1)

我通过仔细检查" libs"来解决了这个问题。目录和删除冗余jar,即使这些jar没有手动添加到依赖项中。

答案 8 :(得分:1)

看看他们的重复jars或依赖项是否会删除它并且您的错误将会消失: 例如: 如果你添加android:supportv4 jar和依赖你将得到错误,所以删除jar错误将会消失

答案 9 :(得分:0)

我通过将recyleview的版本号更改为recyclerview-v7:24.2.1来解决此问题。 请检查您的依赖项并使用正确的版本号。

答案 10 :(得分:0)

对我而言,问题原因是com.google.android.exoplayercom.facebook.android:audience-network-sdk冲突。

我通过从exoplayer

中排除audience-network-sdk库来解决问题
compile ('com.facebook.android:audience-network-sdk:4.24.0') {
    exclude group: 'com.google.android.exoplayer'
}