64

Я обновил свой androidstudio 2.1 stable.As на Android Studio 2.1 supports Android N Developer Preview Android studio 2.1 поддержка Jack (Java Android Compiler Kit) компилятор.Как включить Jack (набор компиляторов Java Android) в студии android

Как добавить или использовать Джек в андроид-студии?

Примечание:

The Jack toolchain is deprecated, as per Java 8 Language Feature Support on Android . However, you may continue to use it to enable Java 8 language features until the replacement is available.

https://source.android.com/source/jack

ответ

126

Сведения о том, что необходимо использовать Джека, и как можно найти в documentation.

Ниже приведена соответствующая часть из документов, которые публикуются в build.gradle, о том, как использовать jackOptions и установить compileOptions для java 1.8.

android { 
    ... 
    defaultConfig { 
     ... 
     jackOptions { 
      enabled true 
     } 
    } 

    compileOptions { 
     sourceCompatibility JavaVersion.VERSION_1_8 
     targetCompatibility JavaVersion.VERSION_1_8 
    } 
} 

UPDATE

Джек Набор инструментов в настоящее время считается устаревшим согласно this post и работа делается для встроенной поддержки Java 8 функций в рамках системы Android сборки в ближайшие недели по почте ,

В сообщении также упоминается, что при работе с Джеком на новый метод не должно быть никаких усилий, если вы все еще хотите попробовать включить Java 8 с помощью Jack.

UPDATE 2 Preview Встроенная поддержка

Теперь вы можете попробовать новый встроенную поддержку для Java 8 с использованием новейших Android 2.4 Studio Просмотр превью 6.

Для получения дополнительной информации о том, как для его включения или перехода от Jack или Retrolambda см. documentation.

+1

Awesome! Спасибо за хороший ответ. – pRaNaY

+25

Я до сих пор получаю сообщение об ошибке: 'Не удалось найти свойство '' Параметры 'on task': app: compileDebugJavaWithJack'.' –

+4

@IgorGanapolsky Я нашел несколько ссылок, которые связывают эту ошибку с обработчиками аннотаций.Вы случайно используете какие-либо библиотеки, которые обрабатывают аннотации, такие как кинжал или маслобойник? Похоже, что Джек недавно получил возможность применять обработчики аннотаций на пути к классам с Android Gradle Plugin версии 2.2.0-alpha1 или выше. Если вы используете более низкую версию, вы можете указать обработчик аннотации самостоятельно, как показано [здесь] (http://tools.android.com/tech-docs/jackandjill). –

11

Вы можете включить компилятор jack, добавив следующую строку в файл build.gradle.

android{ 

compileSdkVersion 23 

buildToolsVersion "24rc2" 

defaultConfig { 
    ... 
    jackOptions { 
     enabled true 
    } 
} 
compileOptions { 
    sourceCompatibility JavaVersion.VERSION_1_8 
    targetCompatibility JavaVersion.VERSION_1_8 
}} 
0

вставки в блоке android{}

jackOptions { 
      enabled true 
     } 

это решение

+0

Спасибо за ваш ответ. Но теперь ** Jack toolchain ** устарел. Проверьте https://source.android.com/source/jack – pRaNaY

+0

Спасибо, мужчина! –

0

Java 8 поддерживается на Android Studio 3 версии, все это jackOptions не требуется больше.

Jack is no longer supported, and you should first disable Jack to use the improved Java 8 support built into the default toolchain.

Более подробно прочитать эту ссылку:

https://developer.android.com/studio/write/java8-support.html

 Смежные вопросы

  • Нет связанных вопросов^_^