1.下载JDK
去官网下载对应的jdk版本并安装, 本人安装的有8,17,23 这三个
2.配置环境变量
1.第一个环境变量
变量名:JAVA_HOME
变量值: C:\Program Files\Java\jdk-8
2.第二个环境变量
变量名:JAVA8_HOME
变量值: C:\Program Files\Java\jdk-8
3.第三个环境变量
变量名:JAVA17_HOME
变量值: C:\Program Files\Java\jdk-17
4.第四个环境变量
变量名:JAVA23_HOME
变量值: C:\Program Files\Java\jdk-23
Path中新建环境变量,
%JAVA_HOME%\bin
检查好Path的环境变量, 没有就加上, 如果有就改为 %JAVA_HOME%\bin ,上移到第一个
3.编写.bat脚本
各位大佬路径改为自己的实际路径!!!
@echo off
setlocal
:menu
cls
echo ============================
echo Select the JDK version to use:
echo ============================
echo 1. JDK 8 (C:\Program Files\Java\jdk1.8.0_191)
echo 2. JDK 17 (C:\Program Files\Java\jdk-17)
echo 3. JDK 23 (C:\Program Files\Java\jdk-23)
echo Q. Quit
echo ============================
set /p choice="Enter your choice (1, 2, 3 or Q): "
if /i "%choice%"=="Q" goto :eof
REM 设置 JAVA_HOME 为目标版本对应的路径
if "%choice%"=="1" (
set "JAVA_HOME=C:\Program Files\Java\jdk1.8.0_191"
) else if "%choice%"=="2" (
set "JAVA_HOME=C:\Program Files\Java\jdk-17"
) else if "%choice%"=="3" (
set "JAVA_HOME=C:\Program Files\Java\jdk-23"
) else (
echo Invalid choice. Please try again.
pause
goto :menu
)
REM 验证 JAVA_HOME 是否存在
if not exist "%JAVA_HOME%" (
echo The specified JDK path does not exist: %JAVA_HOME%
pause
exit /b 1
)
REM 更新系统环境变量 JAVA_HOME 和 Path
setx JAVA_HOME "%JAVA_HOME%" /M
REM setx PATH "%JAVA_HOME%\bin;%PATH%" /M
REM 更新当前会话的 JAVA_HOME 和 Path
set "JAVA_HOME=%JAVA_HOME%"
REM set "PATH=%JAVA_HOME%\bin;%PATH%"
echo Switched to JDK %choice%
echo JAVA_HOME is now set to %JAVA_HOME%
pause
endlocal
4.管理员权限执行.bat文件
执行好.bat文件, 重新打开一个新的cmd终端 , 然后输入 java -version 查看是否切换成功