从 Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.
说起
注意,当前使用的版本是 Android Studio Arctic Fox
2020.3.1
Patch 1
从Artic Fox 2020.3.1版本之后,你的Android Studio版本最低就必须要求Java11了。
要跟Java1.8说再见了。
不升级Java11的话,运行起来会报错: Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8
那就升级一下吧。
我的mac不是直接的在.bash_profile
配置的,而是在 .zshrc
.这点没什么,想在.bash_profile
也可以,两者几乎没差别。
一、 先安装java11
可以从官网下载,但是很慢。
准备1
也可以去华为云下载JDK11,下载地址: repo.huaweicloud.com/java/jdk/11…
下载好之后一路安装。
准备2
然后执行/usr/libexec/java_home -V
命令
这时候会看到多个版本,比如
正式工作
第一步
终端执行 open ~/.zshrc
我原来的java 配置
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH
复制代码
第二步 调整java配置
export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_301.jdk/Contents/Home
export JAVA_11_HOME=/Library/Java/JavaVirtualMachines/jdk-11.0.2.jdk/Contents/Home
alias jdk8='export JAVA_HOME=$JAVA_8_HOME'
alias jdk11='export JAVA_HOME=$JAVA_11_HOME'
复制代码
.
.
.
这块需要你就保留,不需要或者有问题就去掉
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export PATH
export CLASSPATH
复制代码
第三步
终端执行 source ~/.zshrc
至此,能切换了
新开一个终端
输入 jdk8
或者 jdk11
就能切换版本了,可以通过 java -version
查看
.
.
Android Studio 那边怎么搞
此时我们升级了Java11,也通过 java -version
确定当前系统运行的是java11的jdk。
我们android studio 新建一个kotlin项目,然后新建一个kt文件。运行这个kt文件,发现报错Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8
package com.lglf.myjava11kt
class Animal {
fun eat() {
println("每天都是吃吃吃")
}
fun move() {
println("每天都是浪浪浪")
}
}
fun main() {
var ani = Animal()
ani.eat()
ani.move()
}
复制代码
解决一下
kotlin 文件
Preferences > Build, Execution, Deployment > Build Tools > Gradle > Gradle JDK
kt文件就可以运行起来了
java 文件
直接运行,报错
报了个making it incompatible with Gradle 8.0.
- 看了一下,Project Struture,然后把Android Gradle Plugin Version降低为4.1.3
发现没作用。
随后的解决
- 在.idea文件夹下的gradle.xml文件中
- 添加
<option name="delegatedBuild" value="false" />
,然后重新运行,就可以了
Java文件就运行起来了。