构建Apk错误 - 重复条目:android / support / v4 / database / DatabaseUtilsCompat.class?

时间:2017-08-02 00:39:42

标签: android android-studio build.gradle android-support-library android-support-design

我的Gradle是:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"

    defaultConfig {
        applicationId "com.belajarku.gamelari"
        minSdkVersion 14
        targetSdkVersion 25
        multiDexEnabled true


    }

    dexOptions {
        // Prevent OutOfMemory with MultiDex during the build phase
        javaMaxHeapSize "4g"
    }

    buildTypes {
        release {
            minifyEnabled false
            shrinkResources false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }


    }
    sourceSets.main {
        jni.srcDirs = []// <-- disable automatic ndk-build call
    }
}

dependencies {
    compile ('com.google.android.gms:play-services:+'){exclude module: 'support-v4'}
    compile files('libs/dagger-1.2.2.jar')
    compile files('libs/javax.inject-1.jar')
    compile files('libs/nineoldandroids-2.4.0.jar')
    compile files('libs/support-v4-19.0.1.jar')
    compile ('com.android.support:multidex:1.0.1'){exclude module: 'support-v4'}
}

但是当我构建apk 时,项目会说:

  

错误:任务执行失败   &#39;:应用程序:transformClassesWithJarMergingForDebug&#39;

     
    

com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:     机器人/支撑/ V4 /数据库/ DatabaseUtilsCompat.class

  

请帮我修理一下。

2 个答案:

答案 0 :(得分:0)

您应该将支持依赖项更新为相同版本的compileSdkVersion。您的 compileSdkVersion 为25,因此您的支持库也应为25。

请勿使用整套Google Play服务,从Set Up Google Play Services选择您需要阅读的内容。例如,如果您要使用Google广告,请仅添加com.google.android.gms:play-services-ads:11.0.4。你需要改变你的依赖关系:

dependencies {
    ...
    // only use google ads from google service.
    compile 'com.google.android.gms:play-services-ads:11.0.4'

    compile 'com.android.support:support-v4:25.3.1'
    ...
}

然后,您可以设置multiDexEnabled false或对其进行评论并从依赖项中删除compile ('com.android.support:multidex:1.0.1')来停用您的多索引。

答案 1 :(得分:0)

  

com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:android / support / v4 / database / DatabaseUtilsCompat.class

您正在使用不同版本添加两个相同的类。

compile ('com.google.android.gms:play-services:+'){exclude module: 'support-v4'} 
compile files('libs/support-v4-19.0.1.jar')

使用com.google.android.gms:play-services:+您将添加所有具有依赖性的播放服务库包与support-v4。