Gradle 获取错误的 JAVA_HOME 值
Posted
技术标签:
【中文标题】Gradle 获取错误的 JAVA_HOME 值【英文标题】:Gradle get wrong JAVA_HOME value 【发布时间】:2022-01-01 23:06:45 【问题描述】:我尝试运行“离子电容器运行”。它是一个离子 5 电容器项目。
Java 安装在 c:\Program Files\Java\jdk1.8.0_311 和 c:\Program Files\Java\jre1.8.0_311。
当我将 JAVA_HOME 设置为 C:\Program Files\Java\jdk1.8.0_311\bin 时出现此错误:
ERROR: JAVA_HOME is set to an invalid directory: C:\Program Files\Java\jdk1.8.0_311\bin
[capacitor] Please set the JAVA_HOME variable in your environment to match the
[capacitor] location of your Java installation.
当我设置为 C:\Program Files\Java\jdk1.8.0_311(没有 \bin 后缀)时,我收到了这个错误:
[capacitor] FAILURE: Build failed with an exception.
[capacitor]
[capacitor] * What went wrong:
[capacitor] Supplied javaHome must be a valid directory. You supplied: C:\Program Files\Java\jdk-16.0.2
1.16版本之前安装的但是我卸载安装了1.17。 最后我得到了 1.8,因为我有一个 Ionic 4 cordova 项目,它不适用于 Java 1.17。
我卸载/重新安装了 Java,在用户和/或系统设置中设置环境变量并重新启动了几次 windows,但我仍然不知道这个 C:\Program Files\Java\jdk-16.0.2 值来自哪里.
我的 Ionic4 (cordova) 项目运行良好,可以找到正确的 JAVA_HOME 值并可以构建应用程序。
【问题讨论】:
【参考方案1】:首先从echo %JAVA_HOME%
和echo %PATH%
开始,看看你当前的Java JDK在环境和路径中也设置了什么。
设置环境值时使用C:\Program Files\Java\jdk1.8.0_311
不要添加路径中包含的\bin,设置路径C:\Program Files\Java\jdk1.8.0_311\bin
或%JAVA_HOME%\bin
,从第一个开始测试。
!重要的是参考系统变量的路径,不要将它与用户变量路径混淆
更改环境值和路径保存并应用的值后,打开一个新终端以使新更改生效,然后再次运行 echo %JAVA_HOME%
和 echo %PATH%
如果正确。
【讨论】:
echo %JAVA_HOME% 显示 C:\Program Files\Java\jdk1.8.0_311。有趣的是,第二个错误提到 javaHome 而不是 JAVA_HOME以上是关于Gradle 获取错误的 JAVA_HOME 值的主要内容,如果未能解决你的问题,请参考以下文章
Intellij Idea:导入 Gradle 项目 - 尚未定义 JAVA_HOME