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)
这适用于用户级别,但不适用于系统级别.
解决了它:
@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)