查找在gradle中运行编译器的JDK的位置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了查找在gradle中运行编译器的JDK的位置相关的知识,希望对你有一定的参考价值。

有没有方便的方法(除了使用可能未设置的JAVA_HOME env变量之外)找到gradle用于运行的JDK的位置,例如gradle项目中的javaCompile任务?

答案

当我试图克隆gradle存储库以试图查找compileJava任务如何找出要使用的编译器时,我偶然偶然发现了这个问题的答案。我实际上放弃了它,但为了它的乐趣,我决定阅读gradle项目本身的build.gradle文件。

瞧,我找到了这条线:https://github.com/gradle/gradle/blob/989b3147970b70bb519014c0ed55dc3de33b479e/build.gradle#L115

所以在我的build.gradle中执行以下操作会为我提供JDK的位置,该位置用于运行Gradle:

def jvm = org.gradle.internal.jvm.Jvm.current() println jvm.javaHome.toString()

以上是关于查找在gradle中运行编译器的JDK的位置的主要内容,如果未能解决你的问题,请参考以下文章

Gradle - 源代码和测试的不同 JDK 版本

使用gradle编译安卓APK

通过 Eclipse 错误“系统找不到系统 Java 编译器”运行 Gradle 项目

Android studio提示Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.(代码片

Android studio提示Android Gradle plugin requires Java 11 to run. You are currently using Java 1.8.(代码片

深入理解JVM—— 查找JDK源码了解为什么Java是一处编译处处运行