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

В студии Android я реализую 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

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

Ответ 1

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

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

Чуть выше следующей ошибки

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

Итак, я включил multidex и работал

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

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

Ответ 2

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

Ответ 3

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

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

Ответ 4

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

У меня возникла аналогичная проблема, в моем случае проблема возникла из-за зависимости от Facebook.

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

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

Ответ 5

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

android {

    dexOptions {
        javaMaxHeapSize "4g"
    } 
}

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