Windows同时安装两个版本的JDK并随时切换,以JDK6和JDK8为例,并解决相关存在的问题(亲测有效)

Windows同时安装两个版本的JDK并随时切换,以JDK6和JDK8为例,并解决相关存在的问题(亲测有效)

1.下载不同版本JDK

这里给出JDK6和JDK的百度网盘地址,具体安装过程,傻瓜式安装即可。

链接:https://pan.baidu.com/s/1_GWSDN4xZMQtTp2h9NO-4Q?pwd=cg0u

提取码:cg0u

如下图所示,此时已经存在了JDK6和JDK8两个版本。

安装过程纯粹傻瓜式安装,只需要点击安装包,一直下一步即可。

2.配置两个JDK的环境变量

第一步 :在搜索窗口输入环境,找到编辑系统环境变量的入口。记住一定要是系统环境变量 ,如果是用户变量设置的话,可能会失败。

第二步 :在弹出如下的窗口中,点击环境变量

第三步 :出现如下页面,开始新增环境变量

第四步 :点击新建按钮开始进行环境新增

第五步:新增如下几个环境

JDK6环境配置

c 复制代码
JAVA6_HOME=C:\Program Files\Java\jdk1.6.0_45  # 此处地址填写自己本地真实地址

JDK8环境配置

c 复制代码
JAVA6_HOME=C:\Program Files\Java\jdk-1.8  # 此处地址填写自己本地真实地址

JAVA_HOME环境配置

c 复制代码
#如果需要1.6的环境,只需要将此处改为JAVA6_HOME
JAVA_HOME=%JAVA6_HOME% 
c 复制代码
#如果需要1.8的环境,只需要将此处改为JAVA8_HOME
JAVA_HOME=%JAVA8_HOME% 

第六步:根据不同的环境进行不同的环境变量配置

最终在PATH环境中新增变量

新增如下两个变量

c 复制代码
%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin    

第七步 :此时有一个重要事项!!!!!!!也是最重要的一步

此时会看到如上途中,有个C:\Program Files (x86)\Common Files\Oracle\Java\javapath环境变量,经过实战测试需要下移到下面两个变量的下面,修改后如下图所示:

c 复制代码
%JAVA_HOME%\bin
%JAVA_HOME%\jre\bin  

修改完成之后,就可以进行查看环境是否安装成功。

第八步:win+R查看cmd ,命令行输入 如下命令

c 复制代码
java -version

如果此时环境是:

c 复制代码
JAVA_HOME=%JAVA8_HOME% 

此时显示:

如果此时环境是:

c 复制代码
JAVA_HOME=%JAVA6_HOME% 

此时显示:

3.可能存在的问题,修改变量后不显示

问题

如果设置了

C 复制代码
JAVA_HOME=%JAVA6_HOME% 

但是显示当前jdk版本为1.8,这不科学,因为环境变量中配置的JAVA_HOME是1.6的路径,查看版本应该要是1.6的才对,现在变成1.8,jdk的环境变量未被改变,通过查询后发现问题:

在安装JDK1.8时(本机先安装jdk1.6再安装的jdk1.8),自动将java.exe、javaw.exe、javaws.exe三个可执行文件复制到了C:\Windows\System32目录,由于这个目录在WINDOWS环境变量中的优先级高于JAVA_HOME设置的环境变量优先级。

主要解决方式1:

删除C:\Windows\System32目录下的java.exe,删除即可。

主要解决方式2:

\System32目录,由于这个目录在WINDOWS环境变量中的优先级高于JAVA_HOME设置的环境变量优先级。

主要解决方式1:

删除C:\Windows\System32目录下的java.exe,删除即可。

主要解决方式2:

如果Path中有 C:\Program Files (x86)\Common Files\Oracle\Java\javapath; ,删除之。否则会引变量错误。

相关推荐
阿正的梦工坊2 小时前
JavaScript 微任务与宏任务完全指南
开发语言·javascript·ecmascript
chools2 小时前
【AI超级智能体】快速搞懂工具调用Tool Calling 和 MCP协议
java·人工智能·学习·ai
知行合一。。。3 小时前
Python--05--面向对象(属性,方法)
android·开发语言·python
李白你好3 小时前
TongWeb EJB 反序列化生成工具(Java-Chain 插件)
java·安全
青梅橘子皮3 小时前
C语言---指针的应用以及一些面试题
c语言·开发语言·算法
浅时光_c3 小时前
3 shell脚本编程
linux·开发语言·bash
Evand J4 小时前
【三维轨迹目标定位,CKF+RTS,MATLAB程序】基于CKF与RTS平滑的三维非线性目标跟踪(距离+方位角+俯仰角)
开发语言·matlab·目标跟踪
U盘失踪了4 小时前
Java 的 JAR 是什么?
java·jar
私人珍藏库4 小时前
[吾爱大神原创工具] QtScreenSwitcher[Win]一个现代化、极简、高颜值的多屏开关工具。
windows·工具·软件·win·多功能
今天又在写代码4 小时前
java-v2
java·开发语言