【问题标题】:Execution failed for task ':app:dexDebug' when i try compiling code当我尝试编译代码时,任务':app:dexDebug'的执行失败
【发布时间】:2016-03-02 06:37:47
【问题描述】:

当我尝试编译代码时,我收到以下错误:

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

com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command '/库/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/bin/java'' 以非零退出值 2 结束

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

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

repositories {
    maven { url 'https://maven.fabric.io/public' }
    maven { url "https://s3.amazonaws.com/repo.commonsware.com" }

}

android {
    compileSdkVersion 22
    buildToolsVersion "22.0.1"
    defaultConfig {
        applicationId "com.example.example"
        minSdkVersion 14
        targetSdkVersion 22
        versionCode 20012
        versionName '2.3.3'
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled true
            proguardFiles getDefaultProguardFile('proguard-android.txt'),
                    'proguard-rules.pro'
            proguardFile '/My Workspace/FirstApp/proguard-android.txt'
            debuggable false
            multiDexEnabled true
        }
        debug {
            minifyEnabled false
            debuggable true
            proguardFile '/My Workspace/FirstApp/proguard-android.txt'
        }
    }
    packagingOptions {
        exclude 'LICENSE.txt'
        exclude 'LICENSE'
        exclude 'license.txt'
    }
    productFlavors {
    }
}

dependencies {
    compile 'com.google.android.gms:play-services:8.1.0'
    compile 'com.mcxiaoke.volley:library:1.0.18'
    compile 'com.google.code.gson:gson:2.3.1'
    compile files('libs/AF-Android-SDK-v2.3.1.17.jar')
    compile 'com.squareup.okio:okio:1.4.0'
    compile 'com.squareup.okhttp:okhttp:2.4.0'
    compile 'com.android.support:multidex:1.0.1'
    compile 'com.android.support:support-v4:22.2.1'
    compile 'com.android.support:appcompat-v7:22.2.1'
    compile 'com.android.support:cardview-v7:22.2.1'
    compile 'com.android.support:recyclerview-v7:22.2.1'
    compile 'com.squareup.picasso:picasso:2.5.2'
    compile 'com.android.support:design:22.2.1'
    compile 'com.commonsware.cwac:anddown:0.2.+'
}

解决方案:

为 google 位置服务/gcm 使用了单独的 api 库,并删除了完整的播放服务库。这减少了可靠的库方法并解决了错误。

【问题讨论】:

  • 删除compile 'com.android.support:support-v4:22.2.1'
  • 试过了..还是一样

标签: android android-studio gradle


【解决方案1】:

这太笼统了,但是有几个原因会导致您收到此错误

1。在 build.gradle 中检查 dependencies{}。您必须依赖重复的库。
更多详情:Check out my website

2。编译时在build.gradle 中放大堆大小

android {
   ...
   dexOptions{
      incremental true
      javaMaxHeapSize "4g"
   }
}

【讨论】:

  • 试过了..也需要为调试模式添加multiDexEnabled true..但是编译时间增加到90多秒..
【解决方案2】:

我在编译我的应用程序时也遇到了同样的问题,但我参考了这个链接 https://stackoverflow.com/a/22010135/5594089 它解决了我的问题。

if (BuildConfig.DEBUG) {
myView.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        // Do something
    }
});
}

这样修改后就可以了

View.OnClickListener lClickListener = new View.OnClickListener() {
@Override
public void onClick(View v) {
    // Do something
}
};

if (BuildConfig.DEBUG) {
      myView.setOnClickListener(lClickListener);
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-16
    • 2023-03-23
    • 1970-01-01
    • 2016-12-13
    • 2015-05-16
    • 1970-01-01
    相关资源
    最近更新 更多