我如何确定构建中使用了哪个版本的 JAVAC Gradle?

How do I know for sure which version of JAVAC Gradle used in a build?

我需要确定哪个版本的 javac gradle 用于执行任务。有没有办法让它打印使用的 javac 的版本或路径?

我在 MacOS

上使用 Gradle 5.2.1

Gradle 实际上并没有使用 javac (可执行文件)。相反,它以编程方式使用编译器 类。

默认情况下,Gradle 将使用您用于 运行 Gradle 的 JDK 中的 类。您可以通过运行 gradlew --version查看版本。这也适用于 JavadocJavaExec 任务(以及类似的 Java 相关任务和方法)。

可以分叉这些任务并使用与 运行 Gradle 不同的 JDK。但这必须在构建脚本中配置,如果你这样做了,那么你可能也已经知道你让它们使用了什么。如果这不是您的项目并且您需要确定,请搜索“forkOptions”(旧的和复杂的方法)和“toolchain”(新的和简单的方法)。

我不知道有什么方法可以让 Gradle 打印 Java 的版本,它将用于给定的 Java 相关任务。