一学即会之JDK版本快速切换方法(2024)

 更新时间:2025年03月18日 09:37:07   作者:三过食堂而不入  
这篇文章主要介绍了一学即会之JDK版本快速切换方法,详细给大家讲解了如何下载、安装和配置多个JDK版本,并通过设置环境变量和编写批处理脚本来切换JDK版本,需要的朋友可以参考下

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 查看是否切换成功

总结

到此这篇关于JDK版本快速切换方法的文章就介绍到这了,更多相关JDK版本快速切换内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SpringMVC事件监听ApplicationListener实例解析

    SpringMVC事件监听ApplicationListener实例解析

    这篇文章主要介绍了SpringMVC事件监听ApplicationListener实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • Java基础学习之反射机制原理详解

    Java基础学习之反射机制原理详解

    反射是框架的灵魂,Java框架底层都是用反射机制+xml配置等来实现的,本文将通过示例详细讲解Java中的反射机制,感兴趣的小伙伴可以跟随小编学习一下
    2022-03-03
  • TKMybatis的介绍和使用详解

    TKMybatis的介绍和使用详解

    TKMybatis 是基于 Mybatis 框架开发的一个工具,本文主要介绍了TKMybatis的介绍和使用详解,内部实现了对单表的基本数据操作,只需要简单继承 TKMybatis 提供的接口,就能够实现无需编写任何 sql 即能完成单表操作,感兴趣的可以了解一下
    2021-12-12
  • Centos中安装jdk案例讲解

    Centos中安装jdk案例讲解

    这篇文章主要介绍了Centos中安装jdk案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • 浅谈list.removeAll()删除失败的原因及解决

    浅谈list.removeAll()删除失败的原因及解决

    这篇文章主要介绍了浅谈list.removeAll()删除失败的原因及解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • 关于Java如何用好线程池的方法分享(建议收藏)

    关于Java如何用好线程池的方法分享(建议收藏)

    这篇文章主要来和大家分享几个关于Java如何用好线程池的建议,文中的示例代码讲解详细,具有一定的借鉴价值,感兴趣的小伙伴可以了解一下
    2023-06-06
  • mybatis连接MySQL8出现的问题解决方法

    mybatis连接MySQL8出现的问题解决方法

    这篇文章主要介绍了mybatis连接MySQL8出现的问题解决方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • java实现微信退款功能

    java实现微信退款功能

    这篇文章主要为大家详细介绍了java实现微信退款功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • springCloud服务注册Eureka实现过程图解

    springCloud服务注册Eureka实现过程图解

    这篇文章主要介绍了springCloud服务注册Eureka实现过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • idea中如何连接hive

    idea中如何连接hive

    这篇文章主要介绍了idea中如何连接hive问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04

最新评论