首页 >> 知识 >> java

java

Gradle 6.7+ — 使用 Gradle 工具链支持

使用现代版本的 Gradle(6.7+ 版)执行此操作的正确方法是使用Gradle Java 工具链 支持。

以下块,当 java 插件应用于当前项目时,将在所有 java 编译、测试和 javadoc 任务中使用 Java 11:

java { toolchain { languageVersion.set(JavaLanguageVersion.of(11)) }}

这也可以为个别任务设置。

注意:对于依赖于 Java 可执行文件或 Java home 的其他任务,请使用编译器元数据设置适当的选项。请参阅下面的 Kotlin 插件示例,版本 1.5.30 之前。

Gradle 尝试通过几种常见机制自动检测指定 JDK 的位置。如果自动检测不够,可以配置自定义位置。

科特林 1.5.30+

对于 Kotlin 1.5.30+,Kotlin 插件直接支持工具链:

kotlin { jvmToolchain { (this as JavaToolchainSpec).languageVersion.set(JavaLanguageVersion.of("11")) }}Kotlin 早期版本

为 1.5.30 之前的版本配置 Kotlin 编译器涉及使用工具链 API 来确定编译器,并将该信息传递给插件。其他基于编译器的插件可以以类似的方式进行配置。

val compiler = javaToolchains.compilerFor { languageVersion.set(JavaLanguageVersion.of(11))}tasks.withType().configureEach { kotlinOptions.jdkHome = compiler.get().metadata.installationPath.asFile.absolutePath}
网站地图