使用bat脚本切换本地jdk环境变量

工作时维护了多个项目,技术栈差别很大,需要的jdk版本也不同,所以需要比较频繁地切换jdk的环境变量。

首先,我给每个版本的jdk维护了各自的路径,在切换JAVA_HOME的时候,只要指向这些路径即可

说实话,切换环境变量并不复杂,但是为了练习,还是写了简单的cmd脚本

脚本代码如下

@echo off
set /p jdk_version=enter the JDK version you want to switch:
::百分号本身就是转义,双百分号就是百分号
set "str=%%JAVA_HOME_%jdk_version%%%"
::setx  /M 是设置系统全局变量
echo wait...
setx JAVA_HOME %str% /M
echo 被覆盖的JAVA_HOME = %JAVA_HOME% 
echo 请打开新的cmd,使用java -version确认是否切换成功
pause

脚本需要使用管理员运行,不然没有权限设置系统环境变量。

执行脚本后,输入要切换的版本,比如,我要切换到JAVA_HOME_8的变量,就输入8就可以了。

  • set /p可以将键盘输入的值,赋值给变量
  • setx /M 是设置系统全局变量

如果执行脚本后,java -version仍然是原来的值,看一下系统变量Path,把%JAVA_HOME%\bin\;%JAVA_HOME%\jre\bin\;给移到最前面

posted @ 2021-11-10 14:17  XmCui  阅读(376)  评论(0编辑  收藏  举报