Windows 10 JAVA_HOME 环境变量被忽略

Posted

技术标签:

【中文标题】Windows 10 JAVA_HOME 环境变量被忽略【英文标题】:Windows 10 JAVA_HOME environment variable ignored 【发布时间】:2021-10-15 01:25:13 【问题描述】:

当我从命令行运行java -version 时,它返回jre1.8.0_91。我在命令行中使用了 setx 并为JAVA_HOME 编辑了环境变量。命令行似乎被覆盖或忽略了环境变量。所有需要 mvn 等命令的 JDK 错误:"you must set JAVA_HOME to a jdk not a jre"

JAVA_HOME=C:\Program Files\Java\jdk-11.0.6;C:\Program Files\Java\jdk1.8.0_241

【问题讨论】:

JAVA_HOME 应该只包含单个 JDK 的路径。 【参考方案1】:

JAVA_HOME 应该只指向一个目录,不能有两个。这就是为什么您的 Maven 不起作用的原因。修复这个问题,Maven 应该可以工作了。

java -version 输出不直接相关,该命令不使用 JAVA_HOME 而是使用 PATH(但如 cmets 中所述,PATH 引用 JAVA_HOME 是可能,因此在这种情况下它们是间接相关)。

【讨论】:

%JAVA_HOME%\bin; 前面加上PATH 是正常的做法 我没有安装 jre 11。我删除了 jdk1.8.0_241 入口路径并得到了相同的错误,然后删除了 jdk11 入口路径并替换了以前的路径,它按预期工作。如果还安装了 jre,不确定这是否适用于 jdk11。运行 java -version 确实反映了更新的 _241 构建 @g00se 是的,但通常在 PATH 之前已经有 java 的东西 @Sherum 也许你把它删错了。您还记得将; 也从 JAVA_HOME 值中删除吗? @g00se 是的,但通常在 PATH 之前已经有一些 java 的东西 @ais 你需要更仔细地阅读我的评论,尤其是第 7 个词;)

以上是关于Windows 10 JAVA_HOME 环境变量被忽略的主要内容,如果未能解决你的问题,请参考以下文章

windows10如何设置环境变量

Windows10配置Java环境变量

Windows10配置JDK环境变量

Windows 10 Java环境变量配置

Windows 10操作系统配置JDK 1.15的环境变量

Windows10 搭建JAVA环境变量