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

相关推荐
Stream_Silver几秒前
【Agent学习笔记1:Python调用Function Calling,阿里云API函数调用与DeepSeek API对比分析】
开发语言·python·阿里云
froginwe111 分钟前
CSS3 多媒体查询实例
开发语言
OpenMiniServer2 分钟前
电气化能源革命下的社会
java·人工智能·能源
naruto_lnq6 分钟前
C++中的工厂方法模式
开发语言·c++·算法
独自破碎E6 分钟前
LCR_019_验证回文串II
java·开发语言
一切尽在,你来7 分钟前
C++多线程教程-1.2.3 C++并发编程的平台无关性
开发语言·c++
坚持就完事了10 分钟前
Java中的一些关键字
java·开发语言
雨季66619 分钟前
Flutter 三端应用实战:OpenHarmony “专注时光盒”——在碎片洪流中守护心流的数字容器
开发语言·前端·安全·flutter·交互
新缸中之脑26 分钟前
Moltbook 帖子精选
开发语言·php
寄存器漫游者34 分钟前
数据结构 C语言 顺序栈
java·c语言·数据结构