Android с Gradle (Java завершена с ненулевым значением выхода 2)

Это мой файл .gradle:

apply plugin: 'com.android.application' android { compileSdkVersion 21 buildToolsVersion "21.1.2" defaultConfig { applicationId "com.test.test" minSdkVersion 15 targetSdkVersion 21 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } packagingOptions { exclude 'META-INF/license.txt' exclude 'META-INF/LICENSE' exclude 'META-INF/notice.txt' exclude 'META-INF/NOTICE' } } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile 'com.android.support:appcompat-v7:21.0.3' compile 'com.mcxiaoke.volley:library:1.0.15' compile 'org.glassfish.jersey.media:jersey-media-json-jackson:2.17' } 

Когда я пытаюсь запустить приложение для Android, я получаю следующую ошибку:

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

Com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: процесс 'command' / usr / lib / jvm / java-8-oracle / bin / java '' завершен с ненулевым выходом Значение 2

Я получаю эту ошибку, когда добавляю в файл градиента библиотеку Джексона. Подумав немного, я обнаружил, что библиотека Jackson совместима с приложениями для Android, и она быстрее, чем другие библиотеки, такие как gson.

Как я могу это решить? Я новичок в Android.

Solutions Collecting From Web of "Android с Gradle (Java завершена с ненулевым значением выхода 2)"

Я думаю, вы должны изменить java java JDM change jvm v8 для jdk7. Эта ссылка может вам помочь: возможно ли использовать Java 8 для разработки Android?

Другой возможный вопрос об ошибке его ошибки, чистая градация перед сборкой. И замените вашу библиотеку Джексона на это:

 compile 'com.fasterxml.jackson.core:jackson-databind:2.2.+' compile 'com.fasterxml.jackson.core:jackson-core:2.2.+' compile 'com.fasterxml.jackson.core:jackson-annotations:2.2.+' 

Неудобно эта проблема может иметь несколько причин. В моем случае это было из-за превышения максимального номера линии. Это настолько раздражает, что сообщение Android Studio не означает ничего, но почему-то я нашел решение, как показано ниже:

https://developer.android.com/tools/building/multidex.html

Вы должны создать класс, который расширяет MultiDexApplication и переопределяет следующий метод:

  @Override protected void attachBaseContext(Context base) { super.attachBaseContext(base); MultiDex.install(this); } 

Не забудьте добавить «имя» внутри тега в ваш файл AndroidManifest, как описано в приведенной выше ссылке.

Я скопировал требуемую библиотеку внутри my_project / app / libs, а также добавил зависимость в build.gradle. Итак, в моем случае я удалил библиотеку, которую я скопировал в my_project / app / libs. Поскольку gradle поддерживает всю зависимость, мне не нужно класть библиотеку в / libs. Это устранило мою проблему.

Возможно, у вас есть зависимость, которая вызывает несовместимость

например:

Исправление пути JDK решает проблему.

Щелкните правой кнопкой мыши Project> Открыть настройки модуля> Местоположение SDK> В разделе JDK укажите путь к папке JDK.