官网地址
https://developer.android.com/build/jdks?hl=zh-cn
Android build 中的 Java 版本
无论您的源代码是用 Java 还是 Kotlin 编写的,您都必须在多个位置为 build 选择 JDK 或 Java 语言版本。
Gradle build 中的 JDK 关系概览
图 1. 构建中的 JDK 关系
术语库
Java 开发套件 (JDK)
Java 开发套件 (JDK) 包含:
- 工具,例如编译器、性能分析器和归档创建工具。这些文件会在构建过程中在后台使用,以创建您的应用。
- 包含您可以从 Kotlin 或 Java 源代码调用的 API 的库。请注意,并非所有功能都适用于 Android 设备。
- Java 虚拟机 (JVM),一种用于执行 Java 应用的解释器。您可以使用 JVM 运行 Android Studio IDE 和 Gradle 构建工具。JVM 不会在 Android 设备或模拟器上使用。
JetBrains 运行时 (JBR)
JetBrains Runtime (JBR) 是一种增强型 JDK,随 Android Studio 分发。它包含多项优化,可在 Studio 和相关 JetBrains 产品中使用,但也可用于运行其他 Java 应用。
如何选择用于运行 Android Studio 的 JDK?
我们建议您使用 JBR 运行 Android Studio。该插件随 Android Studio 一起部署并用于测试 Android Studio,其中包含一些增强功能,可确保最佳 Android Studio 使用体验。为此,请勿设置 STUDIO_JDK
环境变量。
Android Studio 的启动脚本会按以下顺序查找 JVM:
STUDIO_JDK
环境变量studio.jdk
目录(在 Android Studio 发行版中)- Android Studio 发行版中的
jbr
目录(JetBrains 运行时)。推荐。 JDK_HOME
环境变量JAVA_HOME
环境变量PATH
环境变量中的java
可执行文件
如何选择运行 Gradle build 的 JDK?
如果您使用 Android Studio 中的按钮运行 Gradle,则 Android Studio 设置中设置的 JDK 将用于运行 Gradle。如果您在终端(Android Studio 内或外)中运行 Gradle,则 JAVA_HOME
环境变量(如果已设置)决定了哪个 JDK 运行 Gradle 脚本。如果未设置 JAVA_HOME
,则会对 PATH
环境变量使用 java
命令。
为了获得最一致的结果,请务必将 JAVA_HOME
环境变量和 Android Studio 中的 Gradle JDK 配置设置为同一 JDK。
注意:如果您使用 IDE 右键点击并选择运行突出显示的命令,在 Android Studio 终端中运行 Gradle 命令,则它会使用 Android Studio 设置中的 JDK,而不是 JAVA_HOME。
运行 build 时,Gradle 会创建一个名为“守护程序”的进程来执行实际 build。只要 build 使用的是相同的 JDK 和 Gradle 版本,就可以重复使用此过程。重复使用守护程序可缩短启动新 JVM 和初始化构建系统的时间。
如果您使用不同的 JDK 或 Gradle 版本启动 build,系统会创建其他守护程序,从而消耗更多 CPU 和内存。
提示:同时处理多个项目时,请尽可能在其 gradle-wrapper.proper