Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/350.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.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
路径设置中的java/javac变体?_Java_Development Environment_Javac - Fatal编程技术网

路径设置中的java/javac变体?

路径设置中的java/javac变体?,java,development-environment,javac,Java,Development Environment,Javac,在我的windows机器中,我可以执行“java”,而不需要路径变量指向JDKs java.exe。但是我不能以相同的方式运行“javac”。请告诉我,原因可能是什么 C:\Documents and Settings\USR1>java -version java version "1.6.0_21" Java(TM) SE Runtime Environment (build 1.6.0_21-b07) Java HotSpot(TM) Client VM (build 17.0-b1

在我的windows机器中,我可以执行“java”,而不需要路径变量指向JDKs java.exe。但是我不能以相同的方式运行“javac”。请告诉我,原因可能是什么

C:\Documents and Settings\USR1>java -version
java version "1.6.0_21"
Java(TM) SE Runtime Environment (build 1.6.0_21-b07)
Java HotSpot(TM) Client VM (build 17.0-b17, mixed mode, sharing)

C:\Documents and Settings\USR1>javac -version
'javac' is not recognized as an internal or external command,
operable program or batch file.

C:\Documents and Settings\USR1>echo %PATH%
C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files\Common
Files\Ahead\Lib\

Thx是最奇怪的。您确定没有运行不同的“java.exe”吗?尝试运行带有或不带路径的“java-version”和“javac-version”,查看报告的内容。

听起来您的windows或windows\system目录中都有java.exe的实例。您始终可以搜索所有出现的java.exe

javac不随jre提供,请检查jre是否在路径变量中的某个位置,如果是,请安装jdk并在路径变量中设置jdk的bin位置。

安装jdk时,安装程序会将java.exe的副本放在%WINDIR%\system32中。

如果您需要编译或使用该目录中的任何其他好东西,您需要将%JAVA\u HOME%\bin添加到路径中。

是的,您是对的。.System32文件夹中的“JAVA”是如何出现的,为什么是nt“javac”一些应用程序可能在安装过程中把它放在那里——一个需要JVM来运行的应用程序。它可能是用来运行java小程序和浏览器之类的东西的。运行Java应用程序需要Java.exe,因此它随Java运行时环境一起提供,基于Java的应用程序将安装该环境。您只能使用开发工具包获得编译器(javac),因为绝大多数运行java应用程序但不编写它们的人不需要它。