备份使用,技术有限,可能会有bug,如遇bug请自行修复,部分代码来自百度。
使用方法新建记事本文档,复制下方代码保持并修改文件名为文章标题名
::获取管理员权限
@echo off
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
@echo off
rem --- base Config 配置JDK的安装目录 ---
:init
set JAVA_HOME_1_8=D:JDKjdk1.8.0_91
set JAVA_HOME_11=D:JDKjdk-11.0.13
echo 当前使用的JDK 版本:
java -version
echo.
echo =============================================
echo ############# JDK版本列表 #############
echo.
echo 【1】切换至JDK1.8
echo 【2】切换至JDK11
echo 【3】输入其他任意键退出
echo.
echo =============================================
@echo off
:select
set /p opt=请选择要切换的jdk版本:
if %opt%==1.8 (
echo.
echo 即将切换至JDK1.8
set TARGET_JAVA_HOME=%JAVA_HOME_1_8%
) else if %opt%==1 (
echo.
echo 即将切换至JDK1.8
set TARGET_JAVA_HOME=%JAVA_HOME_1_8%
) else if %opt%==11 (
echo 即将切换至JDK11
set TARGET_JAVA_HOME=%JAVA_HOME_11%
) else if %opt%==2 (
echo.
echo 即将切换至JDK11
set TARGET_JAVA_HOME=%JAVA_HOME_11%
) else (
echo 退出
cmd.exe exit
)
echo 当前选择的Java路径:%TARGET_JAVA_HOME%
wmic ENVIRonMENT where "name='JAVA_HOME'" delete
wmic ENVIRonMENT create name="JAVA_HOME",username="",Variablevalue="%TARGET_JAVA_HOME%"
rem -- refresh env ---
echo.
echo 切换成功!
echo.
echo 10S后关闭bat窗口,执行java -version
echo.
echo 即将执行Java -version 命令
echo.
echo 注意:系统中无JAVA_HOME环境变量时,本次执行的java -version命令会有提示无法执行命令BUG,实际上上方的操作是是成功的。
echo 如遇以上情况,执行下方命令后,具体请以【环境变量】和【关闭当前窗口后新开cmd】执行java -version为准。
ping /n 10 127.0.0.1 >nul
@echo off
start cmd /k "java -version "
@echo on



