Android Studio Gradle 错误“多个 dex 文件定义...”

Android Studio Gradle error “Multiple dex files define…”

我的项目运行良好,直到我添加了 volley 库。然后,它开始给我这样的错误:

Error:Execution failed for task ':app:packageAllDebugClassesForMultiDex'.> java.util.zip.ZipException: duplicate entry: com/android/volley/AuthFailureError.class

我应该怎么做才能解决这个错误?

我的应用gradle在下面

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"
    useLibrary 'org.apache.http.legacy'

    defaultConfig {
        applicationId "com.snsepro.mym"
        minSdkVersion 16
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
        multiDexEnabled = true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    dexOptions {
        javaMaxHeapSize "4g"
    }

    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
    }
}
ext {
    supportLibVersion = '23.1.1'  // variable that can be referenced to keep support libs consistent
}

repositories {
    maven { url 'https://zendesk.artifactoryonline.com/zendesk/repo' }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile files('libs/gcm.jar')
    compile files('libs/gcm-src.jar')
    compile files('libs/picasso-2.5.2.jar')
    compile files('libs/jsoup-1.7.3.jar')
    compile files('libs/gson-2.2.4.jar')
    compile files('libs/volley.jar')
    compile files('libs/cometchat-sdk.jar')
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:recyclerview-v7:23.1.1'
    compile 'com.prolificinteractive:material-calendarview:0.7.0'
    compile 'it.sephiroth.android.library.targettooltip:target-tooltip-library:1.2.9@aar'
    compile 'com.github.siyamed:android-shape-imageview:0.9.+@aar'
    compile 'com.balysv:material-ripple:1.0.2'
    compile 'com.isseiaoki:simplecropview:1.0.8'
    compile 'se.emilsjolander:stickylistheaders:2.7.0'
    compile 'com.github.ksoichiro:android-observablescrollview:1.6.0'
    compile 'com.android.support:design:23.1.1'
    compile 'com.android.support:multidex:1.0.0'
    compile 'com.google.android.gms:play-services:8.4.0'
    compile 'com.google.android.gms:play-services-gcm:8.4.0'
    compile 'com.android.support:cardview-v7:23.1.1'
    compile 'com.google.android.gms:play-services-ads:8.4.0'
    compile 'com.google.android.gms:play-services-identity:8.4.0'
    compile('com.zopim.android:sdk:1.1.1') {
        exclude group: 'com.squareup.picasso'
    }
}

这里添加了排球库bulild.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.1"
    useLibrary 'org.apache.http.legacy'

    defaultConfig {
        applicationId "com.snsepro.mym"
        minSdkVersion 16
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
        multiDexEnabled = true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    dexOptions {
        javaMaxHeapSize "4g"
    }

    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
    }
}
ext {
    supportLibVersion = '23.1.1'  // variable that can be referenced to keep support libs consistent
}

repositories {
    maven { url 'https://zendesk.artifactoryonline.com/zendesk/repo' }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile files('libs/gcm.jar')
    compile files('libs/gcm-src.jar')
    compile files('libs/picasso-2.5.2.jar')
    compile files('libs/jsoup-1.7.3.jar')
    compile files('libs/gson-2.2.4.jar')
    compile files('libs/volley.jar')
    compile files('libs/cometchat-sdk.jar')
    compile 'com.android.support:appcompat-v7:23.1.1'
    compile 'com.android.support:recyclerview-v7:23.1.1'
    compile 'com.prolificinteractive:material-calendarview:0.7.0'
    compile 'it.sephiroth.android.library.targettooltip:target-tooltip-library:1.2.9@aar'
    compile 'com.github.siyamed:android-shape-imageview:0.9.+@aar'
    compile 'com.balysv:material-ripple:1.0.2'
    compile 'com.isseiaoki:simplecropview:1.0.8'
    compile 'se.emilsjolander:stickylistheaders:2.7.0'
    compile 'com.github.ksoichiro:android-observablescrollview:1.6.0'
    compile 'com.android.support:design:23.1.1'
    compile 'com.android.support:multidex:1.0.0'
    compile 'com.google.android.gms:play-services:8.4.0'
    compile 'com.google.android.gms:play-services-gcm:8.4.0'
    compile 'com.android.support:cardview-v7:23.1.1'
    compile 'com.google.android.gms:play-services-ads:8.4.0'
    compile 'com.google.android.gms:play-services-identity:8.4.0'
    compile('com.zopim.android:sdk:1.1.1') {
        exclude group: 'com.squareup.picasso'
    }
    compile 'com.mcxiaoke.volley:library-aar:1.0.1'
}

你的编译文件('libs/volley.jar')是什么库如果是同一个库,肯定会报这个错。在这种情况下尝试删除任何一个。