[英]Gradle wrapper get wrong Java version in Android project on Windows
I am using gradle within an Android project on Windows.我在 Windows 上的 Android 项目中使用 gradle。
When I execute ./gradlew -version
within my project path, error is shown as Could not determine java version from '12'.
当我在我的项目路径中执行
./gradlew -version
,错误显示为Could not determine java version from '12'.
I did have both Java 8 and 12 installed on my machine but my JAVA_HOME
variable is set to jdk1.8 path, the JDK location in Android Studio is also set to jdk1.8.我的机器上确实安装了 Java 8 和 12 ,但我的
JAVA_HOME
变量设置为 jdk1.8 路径,Android Studio 中的 JDK 位置也设置为 jdk1.8。 as show below.如下图所示。 If I call
java -version
from cmd I could also get version 1.8 instead of version 12.如果我从 cmd 调用
java -version
我也可以获得版本 1.8 而不是版本 12。
So why does gradle get a wrong version of Java?那么为什么 gradle 会得到错误的 Java 版本呢? Is there any other configuration that might lead to this result?
是否还有其他配置可能导致此结果?
Gradle version is 4.1 but I prefer not to update it. Gradle 版本是 4.1,但我不想更新它。
Please try this.请试试这个。
Please change your JAVA path (from jdk1.8 to jdk12) in your computer from properties.请从属性更改您计算机中的 JAVA 路径(从 jdk1.8 到 jdk12)。
Go to Computer Properties -> Advanced System setting -> Environment variable -> Edit Path - C:\\Program Files\\Java\\jdk-10.0.1\\bin转到计算机属性 -> 高级系统设置 -> 环境变量 -> 编辑路径 - C:\\Program Files\\Java\\jdk-10.0.1\\bin
Then restart your PC and android studio and check jdk location in android studio.然后重新启动您的PC和android studio并检查android studio中的jdk位置。
I tried to uninstall Java 12 from my machine, and gradle report JAVA_HOME = JAVA_12_DIR is empty, which means JAVA_HOME is still not updated somehow.我试图从我的机器上卸载 Java 12,并且 gradle 报告 JAVA_HOME = JAVA_12_DIR 为空,这意味着 JAVA_HOME 仍然没有以某种方式更新。
So I restart the machine, and the Java version is correctly specified now.所以我重新启动机器,现在正确指定了Java版本。
The reason is probably that I did not shut all my cmd and running java programs down.原因可能是我没有关闭所有我的cmd并关闭运行java程序。 So JAVA_HOME is not properly updated.
所以 JAVA_HOME 没有正确更新。 Although in a new cmd window, the newly updated JAVA_HOME can be found.
虽然在新的 cmd 窗口中,可以找到新更新的 JAVA_HOME。
Please refer to this answer for environmental variable updating detail.有关环境变量更新的详细信息,请参阅此答案。
No, but you will need to close and recreate any cmd windows, running java programs, or the like.
不,但您需要关闭并重新创建任何 cmd 窗口、运行 Java 程序等。
To check it's correct, open a new cmd window and type set -> review the information for PATH and JAVA_HOME.
要检查它是否正确,请打开一个新的 cmd 窗口并键入 set -> 查看 PATH 和 JAVA_HOME 的信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.