Ошибка: не удалось выполнить задачу ':app:dexDebug'. > команда завершилась с ненулевым значением выхода 2

В андроид студии я реализую push-уведомления. Я скачал демо и импортировал в андроид студию. В исходном коде нет проблем, но когда я запустлю эту программу, она покажет проблему:

Ошибка: не удалось выполнить задачу ': app: dexDebug'.

com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: процесс 'команда'C:\Program Files\Java\jdk1.8.0_40\bin\java.exe'' завершен с нулевое значение выхода 2

Как я могу решить это? Пожалуйста, помогите!

5 ответов

Вам нужно знать причину проблемы. Иногда это может быть ошибка JDK. Когда я проанализировал, я нашел

Невозможно выполнить dex: ID метода не в [0, 0xffff]: 65536

Прямо над следующей ошибкой

org.gradle.process.internal.ExecException: обработать 'команду'C:\Program Files\Java\jdk1.8.0_40\bin\java.exe'' с ненулевым значением выхода 2

Поэтому я включил мультидекс, и это сработало

android {
   defaultConfig {
      ...
      multiDexEnabled = true
   }
}

Поэтому, чтобы выяснить вашу проблему, просто отследите, что происходит не так.

Проблема в том, что JDK .. используйте JDK 7, потому что 8 не поддерживается для реализации Android. Подробнее об этом читайте здесь. Удачи

Эта проблема не из-за JDK 1.8 или 1.7, это из-за зависимостей. Пожалуйста, проверьте ваши зависимости Gradle.

Я столкнулся с подобной проблемой, в моем случае проблема возникла из-за зависимости Facebook

dependencies {
    ...
    ...
    ...
    ...
    ...
    //Commented the following one
    compile 'com.facebook.android:facebook-android-sdk:4.0.0'
}

после комментирования вышеприведенной строки все было нормально

Не уверен, что вы уже попробовали это сделать, но я удалил файлы.bin и.lock из папки.gradle (но сохранил cache.xml), и он был успешно собран! Проблема решена для меня.

Я переключился на JDK 7, но это ничего не изменило, так что вернемся к версии 8.

Попробуй добавить блок dexOptions на андроид

android {

    dexOptions {
        javaMaxHeapSize "4g"
    } 
}

Это сработало для меня.

Другие вопросы по тегам