如果我安装了多个版本的Java,我可以指定我想通过批处理文件启动程序的版本,还是我必须更改我的环境变量?如果我必须更改环境路径,那么当前使用其他版本的程序是否会停止工作?我想不,但想确定。
我有以下批处理文件可以动态更改版本,但它似乎不起作用 - http://pastebin.com/4S6xYHan
编辑 - 更新批处理文件。
答案 0 :(得分:0)
批处理文件没问题。
您可以在终端上使用SET
命令来设置JAVA_HOME
,并将其添加到path
变量,并且足以使用jdk运行应用想。
请记住,如果您通过终端设置该变量,该变量将在该终端上工作,并在该终端打开期间持续。
如果你想覆盖范围,你需要在windows变量中设置:
对于linux,您需要使用export命令变量
答案 1 :(得分:0)
如果要为程序的特定实例执行此操作,为什么不指定完整路径,例如
if "%1" == "6.20" (
'C:\Program Files\Java\jdk1.6.0_20\bin\java.exe' -version
)
答案 2 :(得分:0)
如果您的批处理文件执行Java程序:
java com.stackexchange.MyProgram argument1 argument2 etc
您可以将其更改为使用特定的Java安装执行它:
"C:\Program Files\Java\jdk1.6.0_20\bin\java.exe" com.stackexchange.MyProgram argument1 argument2 etc
或者您可以声明变量并使用它(如果您有主批处理文件为 mini 批处理文件设置环境),这非常有用:< / p>
:: In master batch ::
SET JAVA_HOME=C:\Program Files\Java\jdk1.6.0_20\bin
:: In mini batch ::
"%JAVA_HOME%\java.exe" com.stackexchange.MyProgram argument1 argument2 etc