jdk17的安装与配置(同时安装多个jdk)

由于最近出了 SpringBoot 3,想尝尝鲜,但 SpringBoot 3 支持的 jdk 最低版本为 17,我本人电脑上已经有了 jdk 8,所以就考虑同时在电脑上安装两个 jdk 版本,需要用的时候随意切换即可。

下载 JDK 17

进入Oracle官网下载:https://www.oracle.com/cn/java/technologies/downloads/

在这里插入图片描述
打开文件以后长这样:

在这里插入图片描述


这里还有一些细节需要注意,目录里面并没有 jre 文件夹,lib 文件夹下面也没有 td. Jar 和 tools. Jar 两个文件。其实从jdk9以后,这些就不存在了,我看到有些博主教程里面有把jre文件夹和两个jar包手动加进去,其实完全没必要。当然如果你要加进去也完全没问题,对于jre文件夹,需要进入到jdk目录的终端,然后输入bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre即可自动生成,对于两个jar包的话,从网上下载或者jdk8的目录里面复制进来即可。

配置环境变量

打开此电脑,右键属性,点击高级系统变量,选择环境变量,如图:

在这里插入图片描述


进入到下面页面以后,点击新建,需要新建三个变量,建议变量名和我一致,避免出错。然后像我图中一样配置,只需要把jdk的路径改为你自己的即可。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


最后,选择PATH系统变量,选择编辑,此处很关键!!!注意:一个是JAVA_HOME,一个是JAVA_HOME8,为什么?因为如果是JAVA_HOME代表是公共的,如果是JAVA_HOME8则代表是jdk8独有的,就是因为jdk17没有jre文件夹,所以如果给其配置以后必要会报错。

在这里插入图片描述

大功告成!!!

测试

之后怎么切换jdk版本呢?只需修改环境变量JAVA_HOME的值即可

还记得前面配置的这三个吗?

在这里插入图片描述

JAVA_HOME变量的值是什么,就代表当前配置的是什么,比如我上图配置的%JAVA_HOME8%,即代表当前是jdk8,我们进入终端,输入java -version查看下jdk版本

在这里插入图片描述

再JAVA_HOME修改为%JAVA_HOME17%测试一下(注意需要把终端关了才重新打开)

在这里插入图片描述
在这里插入图片描述

如果上面的都能成功,则代表配置成功了!!!

报错

如果你按照上面的配置,还是没有生效的话。进入到C:\ProgramData\Oracle\Java\javapath文件夹,把里面的java有关的可执行文件全删了(不会有任何影响),如果有多个javapath文件夹的话,把javapath全删了也可以,然后再试试。如果还不行,回去检查你前面配置环境变量的PATH里面,是不是有下面这两个配置项,如果有就把它删了,这俩是你安装jdk的时候,系统默认为你生成出来的。

在这里插入图片描述

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-20 17:24:01       172 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-20 17:24:01       190 阅读
  3. 在Django里面运行非项目文件

    2024-07-20 17:24:01       158 阅读
  4. Python语言-面向对象

    2024-07-20 17:24:01       171 阅读

热门阅读

  1. MySQL——视图

    2024-07-20 17:24:01       32 阅读
  2. Window任务栏应用图片无法加载解决方法

    2024-07-20 17:24:01       36 阅读
  3. linux shell(上)

    2024-07-20 17:24:01       36 阅读
  4. RK3588 编译opencv&opencv_contrib记录

    2024-07-20 17:24:01       42 阅读
  5. 二叉树---路径总和

    2024-07-20 17:24:01       35 阅读
  6. windows 安装 kubectl 并连接到 k8s 集群【图文教程】

    2024-07-20 17:24:01       35 阅读
  7. computeIfAbsent 和 putIfAbsent

    2024-07-20 17:24:01       33 阅读
  8. 微软Edge浏览器全解析教程

    2024-07-20 17:24:01       35 阅读
  9. 如何使用unittest框架来编写和运行单元测试

    2024-07-20 17:24:01       33 阅读
  10. 数学建模熵权法

    2024-07-20 17:24:01       37 阅读
  11. RabbitMQ线程和连接模型详解

    2024-07-20 17:24:01       36 阅读