错误:任务':app:transformClassesWithMultidexlistForDebug'执行失败。解决此问题

时间:2018-03-22 12:41:15

标签: java android build.gradle gson

帮助我解决这个问题,因为我是android的初学者,我需要一些帮助..

错误:任务':app:transformClassesWithMultidexlistForDebug'执行失败。

  

java.io.IOException:不能写[D:\ bi.mobile \ app \ build \ intermediates \ multi-dex \ debug \ componentClasses.jar](不能读[C:\用户\ sort.Vijay.gradle \缓存\模块-2 \文件-2.1 \ com.google.code.gson \ GSON \ 2.8.0 \ c4ba5371a29ac9b2ad6129b1d39ea38750043eff \ GSON-2.8.0.jar(;;;;;; ** .class)](重复的zip条目[gson-2.8.0.jar:com / google / gson / annotations / Expose.class]))

这是我的#34; build.gradle"文件

apply plugin: 'com.android.application'

android {
    compileSdkVersion 26


    defaultConfig {
        applicationId "com.bimobile"
        minSdkVersion 15
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        multiDexEnabled true

    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}
android {
    packagingOptions {
        exclude 'META-INF/DEPENDENCIES'
        exclude 'META-INF/NOTICE'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/NOTICE.txt'
    }
    // ..
}
dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    //noinspection GradleCompatible,GradleCompatible
    compile 'com.android.support:appcompat-v7:26.1.0'
    compile 'com.android.support:design:26.1.0'

    compile files('libs/android-async-http-1.4.4.jar')
    compile 'com.google.code.gson:gson:2.8.0'
    compile 'com.google.android.gms:play-services-maps:11.8.0'
    compile files('libs/gson-2.8.0.jar')
    compile 'org.lucasr.twowayview:twowayview:0.1.4'
    compile "com.daimajia.swipelayout:library:1.2.0@aar"
}
android { sourceSets { main { res.srcDirs = ['src/main/res', 'src/main/res/anim'] } } }

2 个答案:

答案 0 :(得分:0)

gradle上添加此行编译'com.android.support:multidex:1.0.0'

在您的应用单身人士课程中添加此extends MultiDexApplication

这可以解决你的问题。

答案 1 :(得分:0)

这是因为您的项目中有多个GSON依赖项。你只需要使用一个。您应该只使用maven中的库:

compile 'com.google.code.gson:gson:2.8.0'

您应该删除以下内容:

compile files('libs/gson-2.8.0.jar')

并且不要忘记删除gson-2.8.0.jar文件夹中的libs/文件。因为您在libs中包含了所有jar,其中包含以下行:

compile fileTree(dir: 'libs', include: ['*.jar'])