一、安装不同版本的jdk
二、配置环境变量(多版本jdk)
1. 新建版本专用环境变量(用于切换)
- 操作位置:系统变量 > 新建
- 变量名:
java_home_1.8
变量值:jdk 8安装路径 - 变量名:
java11_home_11
变量值:jdk 11安装路径 (其他版本如 jdk 17 同理,命名规则:java_home_<版本>
) 注:路径中禁止包含中文或空格 。
- 变量名:
2. 设置主切换变量 java_home
- 变量名:
java_home
变量值:%java_home_17%
(默认指向jdk 17,通过修改此值切换版本)
此变量是动态枢纽,修改其值即可切换jdk版本。
3. 配置 classpath(可选但建议)
- 变量名:
classpath
变量值:
.;%java_home%\lib;%java_home%\lib\dt.jar;%java_home%\lib\tools.jar
- 注意:开头的
.
表示当前目录,不可省略
4. 修改 path 变量
- 编辑
path
变量,新增两条(确保在顶部避免冲突):%java_home%\bin %java_home%\jre\bin
- 关键点:
- 使用
%java_home%
引用路径,而非直接写死路径 - win10需分两行添加,避免自动添加引号导致失效
- 使用
三、多版本切换与验证
1. 初始验证
打开新cmd窗口(环境变量修改后必须重启cmd) java -version # 应显示默认版本(如jdk 8)
2. 切换版本(如切到jdk 11)
- 修改主变量
java_home
的值:- 原值:
%java_home_8%
→ 改为:%java_home_11%
- 原值:
- 重新打开cmd,执行:
java -version # 应显示默认版本(如jdk 11)
3. 验证其他命令(确保全面生效)
javac -version # 检查编译器版本 java # 查看jvm基础命令是否正常
若仅 java
生效但 javac
失败,需检查 path
是否包含 %java_home%\bin
且无多余引号
❗ 常见问题解决
切换后版本未更新:
- 确认
java_home
值已修改,并重启cmd
- 删除系统冲突路径(如
c:\windows\system32\java.exe
)
javac 命令无效:
- 检查
path
中%java_home%\bin
是否被其他jdk路径覆盖。 - 确保变量值无多余分号或引号(win10易自动添加)
环境变量优先级冲突:
- 系统变量 > 用户变量,确保版本变量在系统变量中配置
通过此方案,只需修改
java_home
的指向即可实现多版本无缝切换,适用于开发/测试多版本兼容性场景。若需更高效切换,可参考批处理脚本自动化方案
总结
到此这篇关于jdk同时安装多个版本并自由切换的文章就介绍到这了,更多相关jdk安装多版本并切换内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!