Android Studio 调试失败并出现错误 org.gradle.process.internal.ExecException

Android Studio fails to debug with error org.gradle.process.internal.ExecException

我正在尝试 运行 调试模式下的应用程序,但出现以下错误:

Error:Execution failed for task ':app:dexDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_11\bin\java.exe'' finished with non-zero exit value 2

下面是我的 build.gradle 文件:

buildscript {
    repositories {
        maven { url 'https://maven.fabric.io/public' }
    }

    dependencies {
        classpath 'io.fabric.tools:gradle:1.+'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
apply plugin: 'idea'


repositories {
    maven { url 'https://maven.fabric.io/public' }
}


android {
    compileSdkVersion 21
    buildToolsVersion '21.1.1'
    defaultConfig {
        applicationId 'com.rayat.pricewiz'
        minSdkVersion 17
        targetSdkVersion 21
        versionCode 1
        versionName '1.0'
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
            multiDexEnabled true
        }
    }
    productFlavors {
    }
}

android {
    packagingOptions {
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/LICENSE.txt'
        exclude 'META-INF/license.txt'
        exclude 'META-INF/NOTICE.txt'
    }
    dexOptions {
        jumboMode = true
        javaMaxHeapSize "4g"
    }
}

dependencies {
    compile 'com.android.support:multidex:1.0.0'
    compile files('libs/ksoap2-android-assembly-2.5.8-jar-with-dependencies.jar')
    compile files('libs/universal-image-loader-1.9.2.jar')
    // You must install or update the Google Repository through the SDK manager to use this dependency.
    // You must install or update the Google Repository through the SDK manager to use this dependency.
    compile 'com.google.android.gms:play-services:6.1.71'
    compile 'com.android.support:recyclerview-v7:+'
    compile files('libs/CWAC-SackOfViewsAdapter.jar')
    compile 'com.octo.android.robospice:robospice:1.4.14'
    compile 'com.octo.android.robospice:robospice-spring-android:1.4.14'
    compile 'com.facebook.android:facebook-android-sdk:3.21.1'
    compile('com.twitter.sdk.android:twitter:1.1.1@aar') {
        transitive = true;
    }
    compile files('libs/javax.mail.jar')
    compile files('libs/jackson-databind-2.5.0.jar')
    compile files('libs/jackson-all-1.9.11.jar')
    compile files('libs/jackson-mini-1.9.11.jar')
    compile files('libs/scanditsdk-barcodepicker-android-4.2.1.jar')
    compile files('libs/nineoldandroids-2.4.0.jar')
    compile 'com.squareup.retrofit:retrofit:1.9.0'
    compile 'com.squareup.okhttp:okhttp-urlconnection:2.0.0'
    compile 'com.squareup.okhttp:okhttp:2.0.0'
}

任何人都可以帮忙,因为这个错误让我发疯。我的代码达到了 65k 的限制,所以我添加了 multiDexEnabled 选项。

编辑 我的项目架构

谢谢

那是因为您仅为发布版本启用了 multiDex,而没有为调试版本启用。

试试这个:

defaultConfig {
    multiDexEnabled true
}

请参阅 Android 开发者官方文档

上的 :: Configuring Your App for Multidex with Gradle

试试这个

dexOptions {
    incremental true
    javaMaxHeapSize "4g"
}