Android Studio 启用 Java8 支持
Posted
技术标签:
【中文标题】Android Studio 启用 Java8 支持【英文标题】:Android Studio enable Java8 support 【发布时间】:2019-08-03 00:24:26 【问题描述】:我需要在我的项目中启用 Java8 支持。我找到的所有答案都已过时,我无法弄清楚实际上必须做什么。到目前为止,我已经这样做了:
1. 新增compileOptions
:
android
compileOptions
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
这给了我以下错误:
ERROR: Jack is required to support java 8 language features. Either enable Jack or remove sourceCompatibility JavaVersion.VERSION_1_8.
ERROR: Jack is required to support Java 8 language features. Either enable Jack or remove sourceCompatibility JavaVersion.VERSION_1_8.
-
我尝试使用
jackOptions
启用插孔。但是 gradle 无法识别 jackOptions
。我在某处读到杰克已被弃用。我不知道从这里去哪里。
gradle 版本:4.10.3
【问题讨论】:
你使用的是什么版本的 Gradle 和插件? This 没用? 按照这些说明进行操作 developer.android.com/studio/write/java8-support jack 已弃用 更新到最新的 Android Studio 和最新的 Gradle。 Jack 已被弃用,不再需要 我的 gradle 版本是 4.10.3,我已经在运行 Android Studio 3.3.1 【参考方案1】:尝试启用 jackOptions,如下所示:
android
....
defaultConfig
...
jackOptions
enabled true
compileOptions
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
【讨论】:
此链接详细介绍了使用 java-8 developer.android.com/studio/write/java8-support 它已被弃用,现在完全没有必要【参考方案2】:If you are building using commandline instead of android-studio.
export ANDROID_HOME=/android/SDK_26
export JAVA_HOME=/sw/licensed/sun/jdk/1.8.0_91
export PATH=$JAVA_HOME/bin:$PATH
chmod 777 gradlew
./gradlew
./gradlew assembleDebug
SDK_26: This is SDK-26 toolchain downloaded using sdk-manager.
【讨论】:
【参考方案3】:您应该添加到存储库 google() 并尝试
或
我不确定,但这对你有帮助。
清理项目 -> 删除 .idea 和 .gradle 文件 -> 使缓存无效并重新启动 -> 构建项目
【讨论】:
以上是关于Android Studio 启用 Java8 支持的主要内容,如果未能解决你的问题,请参考以下文章
如何在Android studio中使用java8 的Lambda表达式
如何在android studio中启用proguard? [复制]
如何在android studio中启用proguard? [重复]