Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
javac无法运行,而且似乎没有安装_Java_Javac - Fatal编程技术网

javac无法运行,而且似乎没有安装

javac无法运行,而且似乎没有安装,java,javac,Java,Javac,我在设置Java时遇到了一个问题 我已经安装了JRE,将其路径添加到path,并设置JAVA\u HOME和CLASSPATH。现在,java和javacpl工作正常,但是运行javac会生成一个命令notfound错误。此外,javac.exe甚至似乎不存在于JRE的bin文件夹中 如何运行javac?JRE仅仅是Java运行时环境,它只包括运行已经编译的Java程序所需的基础设施 要使用javac编译Java源代码,您需要Java开发工具包(JDK) 在Oracle上,选择标签为“JDK”的

我在设置Java时遇到了一个问题

我已经安装了JRE,将其路径添加到
path
,并设置
JAVA\u HOME
CLASSPATH
。现在,
java
javacpl
工作正常,但是运行
javac
会生成一个命令notfound错误。此外,
javac.exe
甚至似乎不存在于JRE的
bin
文件夹中


如何运行
javac

JRE仅仅是Java运行时环境,它只包括运行已经编译的Java程序所需的基础设施

要使用
javac
编译Java源代码,您需要Java开发工具包(JDK)


在Oracle上,选择标签为“JDK”的包。

JRE没有javac-您需要下载JDK(Java开发工具包)。

首先,您需要安装JDK,然后在path vaiable中添加JDK的bin文件夹路径


要在cmd中使用javac,您可以参考此

,JDK必须安装在您的系统中

如果您指向JRE中的“bin”文件夹(C:\Program Files\Java**jre7**\bin),javac将无法工作

请检查bin文件夹(C:\Program Files\Java**jdk1.7.0\u 45**\bin)中是否有javac.exe

javac.exe必须位于JDK(C:\Program Files\Java\jdk1.7.0\u 45\bin)内部,而不是JRE(C:\Program Files(x86)\Java\jre7\bin)“JRE不附带编译器。它只是一个Java运行时环境。要使用编译器javac,您需要的是开发工具包。”

用于javac路径(设置系统环境变量时要记住的点)

path=C:\ProgramFiles(x86)\Java\jre7\bin这是错误的

path=C:\Program Files\Java\jdk1.7.0\U 45\bin这是正确的

确保“javac.exe”必须位于的“C:\Program Files\Java\jdk1.7.0\u 45\bin”中

不要混淆JRE和JDK两者是完全不同的

如果你没有JDK,请从这个链接下载

JDK与JRE的参考线程

程序:-

  • 安装JDK

  • 打开命令提示符

  • 键入“cd C:\Program Files\Java\jdk1.7.0\U 45\bin”按enter键(路径可能会根据jdk版本以及32位和64位操作系统版本而更改)

  • 键入“javac”按enter键

  • 完成了

    现在开始更改系统环境变量 path=C:\Program Files\Java\jdk1.7.0\U 45\bin


    这将永久设置路径

    ,这很奇怪。我不记得在使用旧Java版本的库存安装编译代码时遇到过任何问题(并不是因为我太经常需要它)。