Ошибка: Gradle: выполнение не выполнено для задачи ': app: preDexDebug'

У меня была собственная созданная банка из другого проекта, импортированного как библиотека в другой проект. Когда я изменил код в этом проекте и экспортировал новую банку, чтобы заменить старую, я больше не могу запускать свое приложение. Я получаю только следующую ошибку:

Введите описание изображения здесь

Я попытался удалить и добавить и добавить в качестве зависимости, добавив в качестве библиотеки. Ничто не работает. Я также сделал чистую сборку и восстановление.

Мы видели эту проблему в прошлом, когда наш проект компилировался с версией Java, отличной от той, которая использовалась для компиляции библиотеки. Магическое число просто используется для идентификации файлов классов, так что здесь не проблема. Проблема заключается в java-версии (0034.0000 == Java 8).

Проще всего сделать это целевая Java 6, которая может потребовать удаления нового синтаксиса из вашего кода. В нашем случае, как проект, так и библиотека были нашими, поэтому мы смогли добавить следующее, чтобы заставить нужную нам версию Java:

Android-библиотеки

Для библиотек android, добавьте этот код к объекту расширения «android»:

android { ... compileOptions { sourceCompatibility JavaVersion.VERSION_1_6 targetCompatibility JavaVersion.VERSION_1_6 } ... } 

Библиотеки Java

Для java-библиотек добавьте этот код на «верхний уровень»:

 apply plugin: 'java' version '1.8.1' group 'com.yourcompany.package' sourceCompatibility = JavaVersion.VERSION_1_6 //these two lines targetCompatibility = JavaVersion.VERSION_1_6 //are the only ones that matter 

ПРИМЕЧАНИЕ: последние две строки являются единственными, которые имеют значение, я добавил остальных, чтобы показать, где эти строки принадлежат, в отношении остальной части вашего файла построения градиента.

Для нас это было вызвано версией инструментальных средств Android SDK. Возникла проблема с v23.x, но не v22.x. Вам нужно удалить v23 для кордовы, чтобы выбрать v22.

Вероятно, это скорее симптом, чем причина, но это может оттолкнуть кого-то в той же ситуации.

Хотя ваша проблема кажется исправленной, я оказался здесь с аналогичной ошибкой (при создании образцов с сайта developer.android.com). В случае, если это полезно для других, я смог его решить, установив JAVA_HOME в соответствующее значение. В моем случае это было:

 export JAVA_HOME=/usr/lib/jvm/java-6-openjdk-amd64 

добавив:

 sourceCompatibility = JavaVersion.VERSION_X_X targetCompatibility = JavaVersion.VERSION_X_X 

В файле дизайна проекта Android, и файл градиента библиотеки Java работал для меня.

Извините, я бы добавил +1, но не имею достаточно высокой репутации