新建一个bat文件把下面这段粘贴进去
jdk的路径自己改成自己电脑的路径
以管理员方试运行
选择与目标JDK版本对应的菜单
完成切换
@echo OFF rem 修改背景/字体颜色为黑/绿 color 0A rem 自动设置JDK 环境变量,本程序不会对 [系统环境变量] 造成破环!不需要重启!! rem 没有%%JAVA_HOME% %变量值则设置%%JAVA_HOME% %,%%CLASSPATH% %,补充%%PATH% % rem 有%%JAVA_HOME% %变量值则设置过;会仅更新%%JAVA_HOME% % echo + 自动设置JDK 环境变量,不需要重启!! echo + 首次使用注意: echo + 1 .自行修改31 ,32 行 echo + [当前用户环境变量] echo + JAVA_HOME : "%JAVA_HOME%" echo + CLASSPATH : "%CLASSPATH%" echo + PATH : "%PATH%" :menu echo. echo. echo ----------------------------------------------------- echo + 菜单 ............................[快捷键] + echo + 1 .设置环境变量为JDK1 .6 ..............[1 ] + echo + 2 .设置环境变量为JDK1 .7 ..............[2 ] + echo + 3 .设置环境变量为JDK1 .8 ..............[3 ] + echo + m .返回显示菜单 ......................[m] + echo + q .退出...............................[q] + echo ----------------------------------------------------- echo. echo. @rem 用户设置jdk路径 set java6path=C : \Program Files \Java \jdk1.6.0 set java7path=C : \Program Files \Java \jdk1.7.0 set java8path=C : \Program Files \Java \jdk1.8.0 if "%JAVA_HOME%" == "" ( echo 没有检测到%%JAVA_HOME% % goto noJavaHome ) else ( echo 已检测到%%JAVA_HOME% % goto hasJavaHome ) :noJavaHome set /p off=请输入对应的快捷键1 /2 /3 /m/q并按回车: if /i "%off%" =="1" goto noJavaHome_setJDK1.6 if /i "%off%" =="2" goto noJavaHome_setJDK1.7 if /i "%off%" =="3" goto noJavaHome_setJDK1.8 if /i "%off%" =="m" goto menu if /i "%off%" =="q" exit echo 无效输入。 goto menu :hasJavaHome set /p off=请输入对应的快捷键1 /2 /3 /m/q并按回车: if /i "%off%" =="1" goto hasJavaHome_setJDK1.6 if /i "%off%" =="2" goto hasJavaHome_setJDK1.7 if /i "%off%" =="3" goto hasJavaHome_setJDK1.8 if /i "%off%" =="m" goto menu if /i "%off%" =="q" exit echo 无效输入。 goto menu :noJavaHome_setJDK1 .6 echo + 1 .没有检测到%%JAVA_HOME% %;设置环境变量为JDK1 .6 + wmic ENVIRONMENT create name="JAVA_HOME" ,username="%UserName%" ,VariableValue ="%java6path%" wmic ENVIRONMENT create name="CLASSPATH" ,username="%UserName%" ,VariableValue =".;%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar;" wmic ENVIRONMENT create name="Path" ,username="%UserName%" ,VariableValue ="%%JAVA_HOME%%\bin" echo + 设置完毕,任意键退出 + goto anyKeyToExit :noJavaHome_setJDK1 .7 echo + 2 .没有检测到%%JAVA_HOME% %;设置环境变量为JDK1 .7 + wmic ENVIRONMENT create name="JAVA_HOME" ,username="%UserName%" ,VariableValue ="%java7path%" wmic ENVIRONMENT create name="CLASSPATH" ,username="%UserName%" ,VariableValue =".;%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar;" wmic ENVIRONMENT create name="Path" ,username="%UserName%" ,VariableValue ="%%JAVA_HOME%%\bin" echo + 设置完毕,任意键退出 + goto anyKeyToExit :noJavaHome_setJDK1 .8 echo + 3 .没有检测到%%JAVA_HOME% %;设置环境变量为JDk1 .8 + wmic ENVIRONMENT create name="JAVA_HOME" ,username="%UserName%" ,VariableValue ="%java8path%" wmic ENVIRONMENT create name="CLASSPATH" ,username="%UserName%" ,VariableValue =".;%%JAVA_HOME%%\lib\tools.jar;%%JAVA_HOME%%\lib\dt.jar;" wmic ENVIRONMENT create name="Path" ,username="%UserName%" ,VariableValue ="%%JAVA_HOME%%\bin" echo + 设置完毕,任意键退出 + goto anyKeyToExit :hasJavaHome_setJDK1 .6 echo + 1 .已检测到%%JAVA_HOME% %;设置环境变量为JDK1 .6 + echo "%java6path%" wmic ENVIRONMENT where "name='JAVA_HOME'" set VariableValue ="%java6path%" echo + 设置完毕,任意键退出 + goto anyKeyToExit :hasJavaHome_setJDK1 .7 echo "%java7path%" echo + 2 .已检测到%%JAVA_HOME% %;设置环境变量为JDK1 .7 + wmic ENVIRONMENT where "name='JAVA_HOME'" set VariableValue ="%java7path%" echo + 设置完毕,任意键退出 + goto anyKeyToExit :hasJavaHome_setJDK1 .8 echo "%java8path%" echo + 3 .已检测到%%JAVA_HOME% %;设置环境变量为JDk1 .8 + wmic ENVIRONMENT where "name='JAVA_HOME'" set VariableValue ="%java8path%" echo + 设置完毕,任意键退出 + goto anyKeyToExit :anyKeyToExit pause