超详细WindowsJDK1.8与JDK11版本切换教程

一、JDK生效原理

想必大家都在为如何流畅的切换JDK版本问题而来,那么在此篇文章开始之前,首先我们来思考一下这样一个问题:系统是如何使得我们安装的JDK生效的?

聪明的你一定想到了,是的,要想使得我们安装的JDK生效,我们需要配置它的环境变量,让系统知道我们已经安装了JDK并且已经可以使用。

我们大家一般配置环境变量都是先新建一个系统变量JAVA_HOME,而JAVA_HOME所表示的路径为我们安装jdk的路径(不包含bin目录)即:
在这里插入图片描述


之后我们会在Path系统变量中新建环境变量%JAVA_HOME%\bin即:
在这里插入图片描述


那么这些环境变量和JDK生效有什么关系呢?我们来看bin目录下到底有什么内容:

jdk的bin目录:我们看到了熟悉的字眼,没错,就是java和javac命令,它们就是我们每次配置完JDK验证JDK成功的命令,其中javac命令还可以使我们编写的Java文件编译成字节码文件(.class文件)

在这里插入图片描述

jdk自带的jre的bin目录:

在这里插入图片描述


那么计算机如何才能准确的调用这些命令呢?当然是通过Path环境变量来进行查找,Path环境变量的值是一系列路径,Windows操作系统将在此一系列路径中查找命令,若能找到则可执行这些命令,即可以说Windows是通过JAVA_HOME来找到JDK和JRE的,并且当前JDK8以及JDK8之后已经集成了JRE,因此我们在配置JRE时无需再配置CLASSPATH以及配置%JAVA_HOME%\jre\bin环境变量。

那说了这么多,这些和JDK版本的切换有什么关系呢?接下来我们用图来表示。

请添加图片描述


我们当前有一个Java文件,若当前它使用的是JDK8编译的,而我们想要使用JDK11来编译它,怎么办呢,最简单的方法就是将JAVA_HOME的内容改为JDK11,具体操作如下:

二、安装配置JDK11

笔者现在安装一个JDK11(笔者已经安装有JDK8)
点击下一步
在这里插入图片描述


配置好路径后,点击下一步
在这里插入图片描述


等待安装
在这里插入图片描述


点击关闭
在这里插入图片描述


安装成功后,笔者的所有JDK文件如下图所示:
在这里插入图片描述


点击进入jdk-11中,我们看到JDK11已经完全集成了JRE,已经完全看不到JRE的身影
在这里插入图片描述


三、切换JDK11版本

若我们想要切换JDK11版本,我们需要修改JAVA_HOME的JDK路径,具体步骤如下图所示:
修改JAVA_HOME的JDK路径为JDK11的路径:

请添加图片描述


四、查看切换JDK11版本是否成功

之后,我们查看JDK版本是否切换成功:输入java -version命令查看JDK版本

java -version

在这里插入图片描述

我们发现JDK11版本已经切换成功!!!

五、再次切换至JDK8版本

根据以上步骤,我们需要修改JAVA_HOME的JDK路径,具体步骤如下图所示:
修改JAVA_HOME的JDK路径为JDK8的路径:

请添加图片描述


六、查看切换JDK8版本是否成功

之后全部保存后,我们查看JDK版本是否切换成功:输入java -version命令查看JDK版本

java -version

在这里插入图片描述

我们发现,JDK的版本并没有被切换回来!!!


原因:这是为什么呢?这是因为当我们安装并配置好JDK11之后它会自动生成一个环境变量(此变量我们看不到),此环境变量优先级较高,导致我们在切换回JDK8后系统会先读取到JDK11生成的环境变量,而不会读取到JDK8的环境变量。
解决办法:我们需要将%JAVA_HOME%\bin上移至环境变量最高处(赋予它最高的优先级)
在这里插入图片描述


之后,我们再次查看JDK版本是否切换成功:输入java -version命令查看JDK版本
在这里插入图片描述

我们看到已然切换成功!!!

jdk1.8JDK11Java Development Kit(Java开发工具包)的不同版本JDKJava应用程序开发的核心组件,它提供了编译、调试和运行Java程序所需的工具和库。 JDK1.8Java SE 8的一部分,而JDK11Java SE 11的一部分。这两个版本之间有一些区别和新功能。 JDK1.8引入了许多新特性,比如Lambdas表达式、函数式接口、Stream API等,这些特性使得Java编程更加简洁和灵活。然而,JDK1.8在性能和安全方面相对较弱。 而JDK11则引入了更多的新功能和改进,包括更好的性能、增强的安全性、增强的JVM统计信息、新的HTTP客户端API等。此外,JDK11还支持模块化开发。 如果你想将一个使用JDK8编译的Java文件切换JDK11进行编译,你可以通过更改JAVA_HOME的环境变量来实现。具体操作如下: 1. 安装配置JDK11,确保你已经将JDK11正确安装并配置好。 2. 将JAVA_HOME的内容改为JDK11的安装路径。你可以在系统环境变量或者用户环境变量中找到JAVA_HOME,并将其值改为JDK11的安装目录。 3. 确认切换成功,可以通过在命令行中输入`java -version`来查看当前的Java版本。如果显示为JDK11,则表示切换成功。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [详细WindowsJDK1.8JDK11版本切换教程](https://blog.csdn.net/qq_45344586/article/details/129902537)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值