在Windows命令提示符中,Java版本未更改。

3
我试图更改我的Java版本,因为在通过Windows命令提示符运行mvn install时出现编译器错误。我更改了JAVA_HOME变量,并确保它被引用在PATH变量中(##EDIT##:像这样完成:%JAVA_HOME%\bin;%PATH%;)。
当我在包含pom.exe的文件夹中打开命令提示符(使用Windows 7的'在此处打开命令窗口'快捷方式),并输入java -version时,未更改的Java版本被显示。
我确保在启动新命令提示符之前关闭了所有命令提示符实例。奇怪的是,我发现当通过开始菜单中的运行对话框(键入cmd)启动命令提示符时,java -version的结果是所需版本。
7个回答

9

您需要修改以下路径变量:


PATH=%JAVA_HOME%/bin;%PATH%

确保您打开新的命令提示符并重新运行Maven命令后,再发布。

如果我只想在Windows命令提示符中更改版本,该怎么办? - undefined
@mannedear 然后使用SET命令,类似于SET PATH=MY/PATH/TO/JDK:%PATH% - undefined

7

我也遇到了这个问题。我在环境变量中更改了JAVA_HOME,然后当我打开cmd并键入java -version时,我看到的是旧版本。然后,我删除了C:/Program Files/Common Files/Oracle/Java中的javapath文件。通过这种方式,我的问题已经解决。


4
使用“在此处打开命令窗口”快捷方式时,请确保关闭并重新打开相应的资源管理器窗口。以这种方式启动命令提示符时,Windows 使用缓存的环境变量,因此不会检索当前版本的Java。
花了我一段时间才发现这一点,因为这种行为太出乎意料了。之前我在谷歌和stackoverflow.com 上搜索,但没有任何结果。希望这可以避免某些人的麻烦。

1

在我的情况下,以下操作有效:编辑环境变量后,通过命令行检查java -versionjavac -version,javac已经更新但是java没有更新,所以你需要通过命令行进行更新 set path=C:\Program Files\Java\jdk1.8.0_181\bin


0

我也遇到了同样的问题。在设置了JAVA_HOME之后,即使我打开了一个新的命令提示符,但在命令提示符中仍然看不到新的值。

奇怪的是,这只发生在从Windows资源管理器中打开命令提示符时。


0

删除现有的JRE设置。

安装您需要安装的版本。 希望您已经通过设置将其添加到环境变量和路径中...测试一下,应该可以工作!

我以前也遇到过同样的问题,它指向了旧的JRE,卡住了,所以我删除了现有的JDK并安装了一个新的副本。这样就解决了。


0

我也遇到过这个问题,想要在命令提示符中更改Java版本,但是失败了。但最终我通过以下步骤成功了。首先,我会展示失败的尝试,然后是实际成功的步骤,这样你就能知道区别。

失败的步骤:
1. Win + R
2. 输入 cmd 并按回车键
3. 输入 java -version(只是检查版本是否是我们需要更改的旧版本)
4. 现在尝试使用 set path=/classpath= 来更改路径/类路径
5. 现在再次输入 java -version(这仍然会显示旧的Java版本,而不是我们设置的新版本)

成功的步骤: 1. Win + R
2. 输入 open command window here 并按回车键 3. 输入 java -version(只是检查版本是否是我们需要更改的旧版本)
4. 现在尝试使用 set path=/classpath= 来更改路径/类路径
5. 现在再次输入 java -version,哇!我在这里看到了更改的Java版本

谢谢!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接