在Windows中更改当前版本的Java
我在Windows XP环境中工作,最近安装了java 1.6,因为一个应用程序需要它。
但是我不想让这个版本成为默认的java版本。我怎样设置才能使java -version命令返回1.5.x呢?
我在Windows XP环境中工作,最近安装了java 1.6,因为一个应用程序需要它。
但是我不想让这个版本成为默认的java版本。我怎样设置才能使java -version命令返回1.5.x呢?
在命令壳中:
set JAVA_HOME=C:\jdk1.6.0u24
set PATH=%JAVA_HOME%\bin;%PATH%
这样就可以在命令壳中临时设置环境了。Maven、Ant等都会接收到你的新版本Java,而不必反复进入控制面板。
像Eclipse这样的工具应该可以在自己的配置工具中选择使用哪个JDK,以便在环境中使用。
Java 8在\ProgramData\Oracle/Java\javapath上创建了三个快捷方式,分别指向最新的Java8 java.exe、javaw.exe和javaws.exe,然后把\ProgramData\OracleJava\javapath放在PATH的前面,这样无论你对JAVA_PATH环境变量做什么,你仍然可以得到最新的Java 8。
你可以通过以下方法来解决这个问题
1)把/ProgramData/Oracle/Java/javapath改名为其他的名字(例如/ProgramData/Oracle/Java/javapath8)
2)在Java下创建一个新的javapath文件夹,
3)创建你需要的快捷方式。
当你用完旧版本的时候,只需要恢复javapath就可以恢复Java 8了。
由于Java支持-version
命令行选项,你可以用它来选择要运行的特定版本,例如。
java -version:1.7 -jar [path to jar file]
将运行Java 1.7的jar应用程序,如果它被安装。
更多细节,请参见 Oracle的文档 。
创建一个 “setjava.bat "文件,并将该文件保存为以下内容,同时不要忘记更改系统的JAVA\PATH。另外,请记住保存这个文件的扩展名为.bat。
echo off
REM IMPORTANT
REM RUN THIS SCRIPT AS ADMINISTRATOR
set JAVA_REQ_VER=%1
IF "%JAVA_REQ_VER%" == "7" (
set JAVA_PATH="C:\Progra~1\Java\jdk1.7.0_79"
) ELSE (
REM At present I only need to assign 8 by default if not 7
set JAVA_PATH="C:\Progra~1\Java\jdk1.8.0_111"
)
setx /M JAVA_HOME "%JAVA_PATH%"
现在你只需用管理员权限运行这个脚本。
例如:setjava 8, setjava 7
查看 这个链接 了解更多细节。