Java JDK 8在类路径中不可用

Java JDK 8在类路径中不可用,java,Java,很长一段时间以来,我的机器中都有Java 7。现在我也安装了Java 8。问题是,即使将Java_HOME&path变量更改为指向jdk 8,我仍然在类路径中获得jdk 7 下面是环境变量的快照 但是当我在windows中检查版本时,我得到了以下信息。我还应该做些什么来让它指向jdk8吗 C:\Users>java -version java version "1.7.0_71" Java(TM) SE Runtime Environment (build 1.7.0_71-b14) Ja

很长一段时间以来,我的机器中都有Java 7。现在我也安装了Java 8。问题是,即使将Java_HOME&path变量更改为指向jdk 8,我仍然在类路径中获得jdk 7

下面是环境变量的快照

但是当我在windows中检查版本时,我得到了以下信息。我还应该做些什么来让它指向jdk8吗

C:\Users>java -version
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
Java HotSpot(TM) 64-Bit Server VM (build 24.71-b01, mixed mode)
下面是环境变量的快照


我想到四件事:

  • 您似乎已经编辑了用户变量。你看过系统变量了吗?我更愿意在系统级别设置
    JAVA_HOME
    PATH
    变量
  • 您重新启动了cmd/Windows吗
  • 您可以在cmd中键入
    where java
    ,查看Windows在何处找到java
  • 您的
    路径
    变量是什么?查看快照时,我发现它至少包含
    %JAVA\u HOME%\bin

  • 您是否可以在系统变量中检查PATH变量中是否没有指向JDK 7的路径

    即使在“用户”变量中定义或重写Path变量,Windows也只是按此顺序将系统变量与用户变量连接起来

    因此,如果在系统路径中有一个指向JDK 7的路径,您将具有以下值:
    路径=;。。。。。;D:\java\jdk8;%MAVEN_HOME%

    进入控制面板,在搜索框中键入java。单击java标签上的链接。然后单击java选项卡。您将看到活动的运行时。解开你不需要的那个

  • 从system32中删除
    java.exe、Javac.exe和javaw.exe
  • 删除
    oraclePath
    ,就像系统变量路径中的一些文本一样(从jdk8安装时将创建一个新的系统变量)

  • 您正在更改总体系统变量还是用户系统变量?因为您共享的屏幕截图表明,已经为该用户定义了一个用户变量。我已经15年多没有更新过这些系统属性了。让Java安装程序完成它的工作。从系统32中删除了Java.exe和javaw.exe。它现在可以工作:)Thnx