Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.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指向不同的环境_Java_Cmd - Fatal编程技术网

Javac和java指向不同的环境

Javac和java指向不同的环境,java,cmd,Java,Cmd,请帮忙, 我试图运行一个编译过的java类,但当我尝试检查java环境时,它指出了不同的方法,如下所示 c:\NetBeansProjects\Hello\src>javac -version javac 1.7.0 c:\NetBeansProjects\Hello\src>java -version java version "1.6.0_31" Java(TM) SE Runtime Environment (build 1.6.0_31-b05) Java HotSpot(

请帮忙, 我试图运行一个编译过的java类,但当我尝试检查java环境时,它指出了不同的方法,如下所示

c:\NetBeansProjects\Hello\src>javac -version
javac 1.7.0

c:\NetBeansProjects\Hello\src>java -version
java version "1.6.0_31"
Java(TM) SE Runtime Environment (build 1.6.0_31-b05)
Java HotSpot(TM) 64-Bit Server VM (build 20.6-b01, mixed mode)
根据我的电脑(windows 7),我有

我怎样才能把它全部指向Java 7,或者只指向Jave 6……我只想尝试一下Java 7,看看它与Java 6相比有多快……希望我所写的一切都能有所帮助


干杯。

看看你的路径-我怀疑c:\Windows\System32在JDK7目录之前。。。不管出于什么原因,我怀疑这是Java 6。

在jdk/bin之前的系统路径上有jre/bin目录。jre安装中不存在javac命令

因此,java命令获取jre6下的版本,而javac获取jdk1.7.0下的版本


您应该将系统路径更改为仅包含所需的路径。如果要显式地使用一个而不是另一个,请使用绝对名称(包括路径),而不仅仅是可执行文件名。

很可能,您已经安装了JDK 7和JRE 6,并且在path环境变量中,JRE bin path在您的JDK bin path之前

这仅仅是因为您的路径,JRE不包含javac,它包含java,因此在您的路径中,JRE必须位于path变量enter C:\Program Files(x86)\java\jdk1.6.0\u 25\bin中的JDK之前 在system32的路径之前。 它解决了我的问题
只需确保java的路径是“path”环境变量中的第一条路径

您的java路径变量设置为什么?这就是您的答案。请参见下文。它还取决于我们在PATH变量中配置的值的顺序。因此,请根据您希望优先于另一个的顺序排列顺序。这意味着位于C:\Program Files(x86)\Java\jre6\bin中的Java安装版本为1.6.0\u 31。没什么奇怪的。我会简单地删除所有您不想要的安装,并将您想要的JDK放在前面everything@mascourt:嗯-根本不清楚javac版本7是从哪里来的……我遇到了同样的问题。Java7没有设置在PATH中,但我仍然通过运行命令Java-version获得了version7。Jon是对的,java.exe在c:\Windows\System32下…我也有同样的问题。我没有将JDK7放在path变量下,但命令提示符仍然在查找JDK7而不是JDK6(我的path中有JDK6)。正如Grant Zhu提到的,我查看了C:\Windows\System32,将java.exe、javaw.exe和javaws.exe移动到另一个位置,并重新启动了命令提示符。现在,对于java和javac,我的cmd提示符指向完全相同的JDK 6版本。现在我可以切换到JDK7,只需将其替换为path环境变量中的JDK6 path。
C:\Program Files (x86)\Java
jdk1.6.0_25
jdk1.7.0
jre6
jre7