app:build.gradle Android Studio中的dexDebug错误

时间:2016-05-17 12:54:54

标签: android android-studio gradle android-gradle

我在Android Studio上尝试运行项目时收到应用程序:dexDebug错误。我相信它与我的依赖关系有关,但我不确定我哪里出错了。

错误是:

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

  

com.android.ide.common.process.ProcessException:   org.gradle.process.internal.ExecException:进程'命令'C:\ Program Files \ Java \ jdk1.7.0_17 \ bin \ java.exe''以非零退出值2结束

我在build.gradle文件中的依赖关系如下:

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.2.1'
compile 'com.android.support:design:23.2.1'
compile 'com.facebook.android:facebook-android-sdk:[4,5)'
compile 'com.google.android.gms:play-services:8.3.0'
compile 'org.springframework.android:spring-android-rest-template:1.0.1.RELEASE'
compile 'com.fasterxml.jackson.core:jackson-databind:2.3.2'
}

请允许任何人在这里指出我正确的方向。

谢谢。

更新

通过在build.gradle中添加以下内容解决了问题

packagingOptions {
        exclude 'META-INF/license.txt'
        exclude 'META-INF/LICENSE'
        exclude 'META-INF/notice.txt'
        exclude 'META-INF/NOTICE'
    }

2 个答案:

答案 0 :(得分:1)

Android Studio Error:Execution failed for task ':app:dexDebug'解决此问题,在您的gradle文件中将multiDexEnabled设置为true

defaultConfig {        
    // Enabling multidex support.
    multiDexEnabled true
}

答案 1 :(得分:1)

问题很可能是由添加所有播放服务依赖项引起的。您不应该将整个API包编译到您的应用程序中,这会增加应用程序中的方法数量。 app:dexDebug错误表示您已超过65k方法限制。在build.gradle中删除此行:compile 'com.google.android.gms:play-services:8.3.0' 然后根据您的应用需要,从这些seperate dependencies中选择要添加的内容。例如,要使用Gcm,您只需要添加compile 'com.google.android.gms:play-services-gcm:8.4.0'