bat/cmd文件设置java主路径

Hen*_*rik 2 windows cmd batch-file

我想在不同的java版本之间轻松切换,因此想要通过运行bat/cmd文件在环境变量中设置系统级的主路径和路径.

我的.bat文件如下所示:

@echo off  
echo Setting JAVA_HOME  
set JAVA_HOME=C:\Program Files\Java\jdk1.8.0
echo JAVA_HOME: %JAVA_HOME% 
echo setting PATH
set PATH=%JAVA_HOME%\bin;%PATH% 
echo PATH: %PATH%  
Run Code Online (Sandbox Code Playgroud)

如果我在同一个命令提示符中键入echo%JAVA_HOME%,那么它会打印到jdk1.8.0的路径,但如果我打开一个新的命令提示符则不会,如果我查看环境变量,它也不会列在那里.

编辑:我也试过了

@echo off  
echo Setting JAVA_HOME  
setx JAVA_HOME "C:\Program Files\Java\jdk1.8.0"
echo JAVA_HOME: %JAVA_HOME% 
echo setting PATH
setx PATH "%JAVA_HOME%\bin;%PATH%"
echo PATH: %PATH%  
echo Display java version  
java -version  
Run Code Online (Sandbox Code Playgroud)

这适用于用户级别,但不适用于系统级别.

Hen*_*rik 7

解决了它:

@echo off  
echo Setting JAVA_HOME  
setx -m JAVA_HOME "C:\Program Files\Java\jdk1.8.0"
echo JAVA_HOME: %JAVA_HOME% 
echo setting PATH
setx -m PATH "%Path%;%JAVA_HOME%\bin"
echo PATH: %PATH%  
echo Display java version  
java -version  
pause
Run Code Online (Sandbox Code Playgroud)