一键切换jdk
一键切换jdk
原理为脚本修改环境变量
jdk8.cmd
@echo off
::获取管理员权限
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
::设置显示模式
mode con cols=85 lines=25 & color 3f
title SWJDK批处理脚本
:menu
echo 当前的JDK版本:
java -version
echo.
setx "JAVA_HOME" "D:\jdk\jdk1.8.0_342" /m
echo 提示: JDK版本切换成功,"JAVA_HOME" 已修改为 D:\jdk\jdk1.8.0_342。
echo 当前的JDK版本:
java -version
choice /t 3 /d y /n >nul
echo 延迟3秒自动退出:
:exit
jdk17.cmd
@echo off
::获取管理员权限
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
::设置显示模式
mode con cols=85 lines=25 & color 3f
title SWJDK批处理脚本
:menu
echo 当前的JDK版本:
java -version
echo.
setx "JAVA_HOME" "D:\jdk\jdk17.0.5_8" /m
echo 提示: JDK版本切换成功,"JAVA_HOME" 已修改为 D:\jdk\jdk17.0.5_8。
echo 当前的JDK版本:
java -version
choice /t 3 /d y /n >nul
echo 延迟3秒自动退出:
:exit
switch_jdk.cmd
@echo off
::获取管理员权限
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
cd /d "%~dp0"
::设置显示模式
mode con cols=85 lines=25 & color 3f
title SWJDK批处理脚本
:menu
echo 当前的JDK版本:
java -version
echo.
echo =============================================
echo ################ JDK版本列表 ################
echo.
echo 【8】切换至JDK8
echo 【11】切换至JDK11
echo 【17】切换至JDK17
echo 【21】切换至JDK21
echo 【0】取消
echo.
echo =============================================
echo.
set /P vb=请选择要切换的JDK版本:
IF "%vb%" EQU "8" (
setx "JAVA_HOME" "C:\Users\jdw\.jdks\corretto-1.8.0_372" /m
echo 提示: JDK版本切换成功,"JAVA_HOME" 已修改为 D:\jdk\jdk1.8.0_342。
echo.
) ELSE IF "%vb%" EQU "11" (
setx "JAVA_HOME" "D:\jdk\jdk-11.0.2" /m
echo 提示: JDK版本切换成功,"JAVA_HOME" 已修改为 D:\jdk\jdk-11.0.2。
echo.
) ELSE IF "%vb%" EQU "17" (
setx "JAVA_HOME" "D:\jdk\jdk17.0.5_8" /m
echo 提示: JDK版本切换成功,"JAVA_HOME" 已修改为 D:\jdk\jdk17.0.5_8。
echo.
) ELSE IF "%vb%" EQU "21" (
setx "JAVA_HOME" "D:\jdk\jdk21.0.0_35" /m
echo 提示: JDK版本切换成功,"JAVA_HOME" 已修改为 D:\jdk\jdk21.0.0_35。
echo.
) ELSE IF "%vb%" EQU "0" (
goto exit
) ELSE (
echo.
echo !!!版本选择错误,请重新选择. . .
echo.
goto menu
)
echo 请按任意键退出. . . & pause > nul
:exit