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; ,删除之。否则会引变量错误。

相关推荐
毕设源码-钟学长14 小时前
【开题答辩全过程】以 基于springboot的健身房ERP系统设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
古城小栈14 小时前
rust 字符串,更严谨的设计
开发语言·rust
To Be Clean Coder14 小时前
【Spring源码】getBean源码实战(七)——BeanPostProcessor与初始化方法
java·后端·spring
Holy meat14 小时前
【[特殊字符] 终极指南:Claude Code 国内中转站 API 极速配置与深度实战(Linux/Windows 双平台)】
windows
+VX:Fegn089514 小时前
计算机毕业设计|基于springboot + vue民宿平台管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·课程设计
窗边鸟14 小时前
小白日记之Java循环结构
java
毕设源码-赖学姐15 小时前
【开题答辩全过程】以 高校教学管理系统的设计与实现为例,包含答辩的问题和答案
java
xl.liu15 小时前
GN(Girvan-Newman)算法详解:从原理到实现及其在商品关联集合分析中的应用
开发语言·算法·php
hoiii18715 小时前
基于MATLAB/Simulink使用M函数实现无刷直流电机(BLDCM)双闭环控制系统
开发语言·matlab
superman超哥15 小时前
Rust 复制语义(Copy Trait)与移动语义的区别:类型系统的精确控制
开发语言·后端·rust·编程语言·移动语义·rust复制语义·copy trait