Java版本显示7,Java版本在Windows中显示8?

3 java-7 java-8

我很沮丧地看到以下行为,并且在研究之后还不确定如何解决这个问题.我有两个单独的项目,一个仅适用于Java 7(无法更新到Java 8),另一个项目适用于Java 8(无法降级到7).所以我在我的Windows机器上安装了Java 7和8.

所以,我经常看到以下行为.目前我在Java 8上并希望切换回Java 7,因此我将环境变量JAVA_HOME和PATH更改为指向Java 7,但是当我通过CMD进行验证时,它会向我显示以下内容.

C:\>java -version
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)

C:\>javac -version
javac 1.7.0_71
Run Code Online (Sandbox Code Playgroud)

我不能使用上面的组合,这两个项目都不适合我.因此,我总是需要卸载Java 8,然后才能指向Java 7.此外,如果我想回到Java 8(再次安装Java 8),那么它会向我显示以下组合.如何在Windows上修复此错误?因为每次卸载JDK都不是解决方案.请帮我.

C:\>java -version
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b15)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)

C:\>javac -version
javac 1.8.0_45
Run Code Online (Sandbox Code Playgroud)

JB *_*zet 6

java.exe,Java运行时,也安装在c:\windowsc:\windows\system32(不记得了,我现在在Mac上).

因此,即使您的PATH包含JDK的bin目录,如果c:\ windows(或c:\ windows\system32)位于PATH中的JDK\bin 之前,则c:\ windows(或c:\ windows\system32)中的版本)是使用的那个.

只需确保JDK是PATH中的第一个,或者至少在c:\ windows(或c:\ windows\system32)之前.