我在运行Windows XP sp3的计算机中同时安装了Java 6和Java 7。 我在"我的电脑"->"属性"中的环境变量(PATH,JAVA_HOME)中输入了路径。 但是当我给
java -version
我仍然收到以下文字
java version"1.7.0_09"
Java(TM) SE Runtime Environment (build
1.7.0_09-b05) Java HotSpot(TM) Client VM (build 23.5-b02, mixed mode, sharing)
但是,当我尝试
javac -version
我懂了
javac 1.6.0_03
如何将运行时从Java 7更改为Java 6? 当我使用ant在eclipse中编译程序时,得到以下信息
Warning: java\util\List.class(java\util:List.class): major version 51
is newer than 50, the highest major version supported by this
compiler. [javac] It is recommended that the compiler be upgraded.
键入echo %PATH%时会说什么?
路径首先具有JRE,因此具有java -version,其次具有JDK,因此具有javac -version。检查您的PATH变量。
如果要使用JDK版本,请先将其放在PATH上。
+1为正确答案。 我总是添加%JAVA_HOME% bin; 作为PATH的第一个参数。 这样,我只需要编辑JAVA_HOME即可在JDK之间切换。
不能立即工作,必须修改系统变量而不是"当前用户"变量才能使其工作。
安装Java(JRE)时,除了C:\Program Files下的安装目录外,它还将java.exe复制到C:\Windows\System32中。但是,当您安装完整的JDK(带有编译器)时,对于javac.exe而言,它不起作用。如果有多个版本的Java,则在命令行中键入java时将调用最后一个安装的版本。
如果需要多个Java版本,请使用完整路径,尝试在命令行中使用不合格的java总是会遇到问题。或者,重新安装JRE 7-这将强制默认java为V7。
如果没有记错的话,JDK或JRE的Java 7 Windows安装程序会将java.exe复制到某些Windows通用路径中。我记不清确切的路径,但可能记不清C: Windows System32。在命令行上尝试此操作以了解java.exe的位置在哪里:
where java
相应地更新路径优先级。
不能在Windows XP中使用,但可以在Windows 7中使用。您可以尝试。 与Unix中的哪个命令相似。