Как включить функции языка Java 8 в Android-студии
Выпущена версия Android Studio 2.4 Preview 4, теперь она поддерживает языковые функции Java 8. Джек больше не требуется, и нужно отключить Джек, чтобы использовать улучшенную поддержку Java 8, встроенную в набор инструментов по умолчанию.
Теперь нам нужно отключить Джек и переключиться на набор инструментов по умолчанию. Как включить функции Java 8 для использования в проекте Android Studio?
4 ответа
Включить поддержку Java 8:
Чтобы начать использовать поддерживаемые функции языка Java 8, обновите плагин Android до версии 2.4.0-alpha4 (или выше) и добавьте в свой модуль следующее build.gradle
файл:
android {
...
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
Отключить jackOptions:
Мы можем отключить Jack и переключиться на набор инструментов по умолчанию, удалив блок jackOptions из файла build.gradle модуля:
android {
...
defaultConfig {
...
// Remove this block.
jackOptions {
enabled true
}
}
}
Примечание. Если в вашем проекте используются Jack, Retrolambda или DexGuard, Android Studio по умолчанию использует поддержку Java 8, предоставляемую этим инструментом.
Отключить поддержку Java 8:
Мы также можем отключить функции Java 8 в вашем проекте, если вы столкнулись с какой-либо проблемой, связанной с Java 8. Мы можем обновить gradle.properties
файл, добавив строку ниже, чтобы отключить функции Java 8:
android.enableDesugar=false
Установите флажок Использовать функции языка Java 8 для получения более подробной информации о функциях Java 8.
Я знаю, что на это уже ответили, но после нового обновления Gradle и Android Studio, jackOptions
устарела.
android {
.....
defaultConfig {
..........
//remove jackOptions and add
android.compileOptions.sourceCompatibility 1.8
android.compileOptions.targetCompatibility 1.8
}
// Keep the following configuration in order to target Java 8.
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
Простой процесс -
Right click on Project > Open Module Setting (F4) > Modules (app) >
Выбрать -
Source Compatibility - 1.8
Target Compatibility - 1.8
Чистый ответ-
Просто добавьте подписку на уровень приложения build.gradle
а также Sync
android {
...
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
android {
...
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
И включите jackOption в вашем же модуле Gradle
defaultConfig {
jackOptions {
enabled true
}
}
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "****************"
minSdkVersion 15
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
jackOptions {
enabled true
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
compileOptions {
targetCompatibility JavaVersion.VERSION_1_8
sourceCompatibility JavaVersion.VERSION_1_8
}
}