Как включить Джек (Java Android Compiler Kit) в андроид студию
Я обновил свою стабильную версию androidstudio 2.1. Согласно Android Studio 2.1 поддерживает Android N Developer Preview. Android studio 2.1 поддерживает компилятор Jack (Java Android Compiler Kit).
Как добавить или использовать Джек в андроид студии?
НОТА:
Набор инструментов Jack устарел, согласно Java 8 Language Feature Support на Android. Однако вы можете продолжать использовать его для включения функций языка Java 8 до тех пор, пока замена не станет доступна.
6 ответов
Подробности о том, что требуется для использования Джека и как можно найти в документации.
Вот соответствующая часть из документов, которая идет в build.gradle
о том, как использовать jackOptions
и установить compileOptions
для Java 1.8.
android {
...
defaultConfig {
...
jackOptions {
enabled true
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
ОБНОВИТЬ
Согласно этому сообщению, в настоящее время набор инструментов Jack считается устаревшим, и в ближайшие недели, согласно сообщению, в настоящее время ведется работа по собственной поддержке функций Java 8 как части системы сборки Android.
В посте также упоминается, что переход от Jack к новому методу может быть практически невозможен, если вы все еще хотите попробовать включить функции Java 8 с Jack.
ОБНОВЛЕНИЕ 2 Предварительный просмотр Встроенная поддержка
Теперь вы можете попробовать новую встроенную поддержку Java 8, используя последнюю версию Android Studio preview 2.4 preview 6.
Для получения дополнительной информации о том, как включить его или перейти с Jack или Retrolambda, см. Документацию.
Вы можете включить компилятор jack, добавив следующую строку в файл build.gradle.
android{
compileSdkVersion 23
buildToolsVersion "24rc2"
defaultConfig {
...
jackOptions {
enabled true
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}}
Джек / Джилл будут заброшены в ближайшее время, смотрите пост Google. https://android-developers.googleblog.com/2017/03/future-of-java-8-language-feature.html
1- build.gradle (Модуль)
defaultConfig {
//remove jackOptions
jackOptions {
enabled true
}
}
2 - если вы используете стороннюю версию, которая использует Java 8 build.gradle (Project)
buildscript {
dependencies {
//remove this line of your third-party dependency
classpath 'PATH<VERSION>'
}
}
3- удалите retrolamda, примените плагин "....labmda", удалите эти строки из вашего модуля.
3- добавить в build.gradle (модуль) android {
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
Вставить в блок android{}
jackOptions {
enabled true
}
это решение
Java 8 поддерживается в версиях Android Studio 3, все это jackOptions
не требуется дольше.
Jack больше не поддерживается, и вы должны сначала отключить Jack, чтобы использовать улучшенную поддержку Java 8, встроенную в набор инструментов по умолчанию.
Для более подробной информации прочитайте эту ссылку:
https://developer.android.com/studio/write/java8-support.html