'java'命令正在运行,但'javac'没有

时间:2016-08-06 12:34:08

标签: java java-8 javac

我设置了路径变量。

Variable: JAVA_HOME
Value: C:\Program Files\Java\jdk1.8.0_101
Path: C:\ProgramData\Oracle\Java\javapath;

当我执行命令'java -version'时,输出是

java version "1.8.0_102"
Java(TM) SE Runtime Environment (build 1.8.0_102-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.102-b14, mixed mode)

但是当我输入'javac -version'时,输出是

'javac' is not recognized as an internal or external command,
operable program or batch file.

为什么javac ic无法识别?

PS:我已经多次重启我的电脑了。

3 个答案:

答案 0 :(得分:2)

看起来您已经安装了不同版本的单独JRE和JDK,并且您的路径仅包含JRE的public static void main(String[] args) { String telephoneNr = "88765432"; if (telephoneNr.matches("^(?=(?:[8-9]){1})(?=[0-9]{8}).*")) { System.out.println("Valid phone number!"); } else { System.out.println("Invalid!"); } } 目录。您已将bin显示为包含版本1.8.0_101,但您看到的JAVA_HOME输出显示为1.8.0_102,因此显然不是来自该安装。

我建议查找并卸载1.8.0_101 JRE,然后更新-version以在JDK安装中包含两个PATH目录。其中一个是bin,另一个是basepath\jdk\bin。按顺序包含它们(JDK优先)。然后确保basepath\jdk\jre\bin指向该安装。

刚刚在Windows机器上安装了JDK 1.8.0_101,我可以确认它将JRE JAVA_HOME目录添加到路径而不是JDK bin目录。如果您还想在路径中使用JDK bin目录,请通过控制面板将bin添加到PATH(如有必要,可以更改版本号)。

答案 1 :(得分:0)

如果java命令正在运行并且遇到javac问题。然后首先检查jdk的bin目录javac.exe文件是否存在。如果javac.exe文件存在,则将JAVA_HOME设置为System变量。

答案 2 :(得分:0)

右键点击my computer并选择properties

  1. 在打开的窗口左侧点击Advanced system settings
  2. 打开系统属性后,点击Advanced标签,然后点击Environment Variables..
  3. System variables窗口的Environment Variables部分中,点击New按钮设置JAVA_HOME。
  4. 设置以下设置:
           变量名称:JAVA_HOME
           变量值:C:\ Java \ jre1.8.0_92 \; C:\ Java \ jdk1.8.0_92 \
  5. 在所有窗口中单击“确定”
  6. Set Java_Home on Windows 7

    也可能需要在用户变量部分设置JAVA_HOME