admin 管理员组

文章数量: 887021

目录

  • 传送门
  • 前言
  • 下载 JDK 17 安装包
  • Linux环境安装
    • 1、版本选择
    • 2、版本说明
    • 3、yum方式安装和安装包tar.gz方式
    • 4、检查卸载之前旧版本JDK
    • 5、正式安装

传送门

SpringMVC的源码解析(精品)
Spring6的源码解析(精品)
SpringBoot3框架(精品)
MyBatis框架(精品)
MyBatis-Plus
SpringDataJPA
SpringCloudNetflix
SpringCloudAlibaba(精品)
Shiro
SpringSecurity
java的LOG日志框架
Activiti(敬请期待)
JDK8新特性
JDK9新特性
JDK10新特性
JDK11新特性
JDK12新特性
JDK13新特性
JDK14新特性
JDK15新特性
JDK16新特性
JDK17新特性
JDK18新特性
JDK19新特性
JDK20新特性
JDK21新特性
其他技术文章传送门入口

前言

JDK17安装环境分几个环境,window、linux、mac

jdk17安装包来源主要有oracle jdk和open jdk,个人推荐官方的oracle jdk,毕竟官方。后面例子也以官方jdk17安装包为准,并且以Linux环境CentOS7的安装为准,window环境安装的博文太多了。

熟悉的读者,可以通过目录直接看 Linux环境安装-5正式安装,跳过前面的和1234,直接看5。

下面文章不定期更新中。。。

Linux安装JDK17(精品)
Linux安装MySQL(精品)
Linux安装Nginx(精品)
Linux安装Maven(精品)
运行一个jar包(精品)

Jenkins安装启动(JDK8/11/17)
Jenkins配置(插件/角色/凭证)
Jenkins的jdk和maven配置
Jenkins三种构建类型

下载 JDK 17 安装包

可以从官网(https://www.oracle/java/technologies/downloads/)
或者 OpenJDK(https://jdk.java/17/)下载 JDK 17 安装包,选择适合你的系统和位数的版本。

Linux环境安装

1、版本选择

可以看到有Linux、macOS、Windows三种操作系统的选择

Windows那边建议直接选择zip压缩包的,找好安装目录,直接解压缩完事,然后在计算机-属性-系统变量中设置JAVA_HOME等变量值就可以了。

Linux系统这边着重说一下版本,CentOS这种Linux系统简单选择规则就是看结尾是tar.gz,然后就是选择x64的,也就是一般单词短的。像 Ubuntu (本质Debian)这种就更好找了,直接选择x64 Debian Package这种带Debian字眼的。


由于作者是CentOS7,所以最终确认选择第3行x64 Compressed Archive :
https://download.oracle/java/17/latest/jdk-17_linux-x64_bin.tar.gz ( sha256)

2、版本说明

这些压缩归档文件和软件包都是针对不同的操作系统和处理器架构的。

ARM64 Compressed Archive(ARM64 压缩归档):

  • ARM64 压缩归档文件是一个压缩的文件夹,其中包含适用于 ARM64 架构的二进制可执行文件和支持文件。
  • 这种类型的文件通常用于在 Linux 上安装 ARM64 版本的软件或操作系统。
  • ARM64 是基于 ARM 架构的 64 位处理器架构。
  • ARM 架构广泛用于移动设备和嵌入式系统,如智能手机、平板电脑和物联网设备。
  • 如果你的计算机或服务器是基于 ARM 架构的,你应该选择 ARM64 压缩归档文件来安装适用于 ARM64 架构的软件或操作系统。

ARM64 RPM Package(ARM64 RPM 软件包):

RPM(Red Hat Package Manager)是一种流行的 Linux 软件包管理工具。

  • ARM64 RPM 软件包是一种预编译的软件包格式,专门为适用于 ARM64 架构的 Linux 发行版设计。
  • 使用 RPM 软件包管理器可以方便地安装、升级和卸载软件包。

x64 Compressed Archive(x64 压缩归档):

  • x64 是指基于 x86 架构的 64 位处理器架构。

  • x86 架构广泛用于个人计算机和服务器,包括大多数桌面和笔记本电脑。

  • 如果你的计算机或服务器是基于 x86 架构的,你应该选择 x64 压缩归档文件来安装适用于 x64 架构的软件或操作系统。

  • x64 压缩归档文件是一个压缩的文件夹,其中包含适用于 x64 架构的二进制可执行文件和支持文件。

  • 这种类型的文件通常用于在 Windows 或 Linux 上安装 x64 版本的软件或操作系统。

x64 Debian Package(x64 Debian 软件包):

  • Debian 软件包是基于 Debian GNU/Linux 发行版的软件包格式,通常用于 Ubuntu 和其他 Debian-based
    发行版。

  • x64 Debian 软件包是一种预编译的软件包格式,专门为适用于 x64 架构的 Linux 发行版设计。

  • 使用 dpkg 和 apt 软件包管理器可以方便地安装、升级和卸载软件包。

x64 RPM Package(x64 RPM 软件包):

  • x64 RPM 软件包是一种预编译的软件包格式,专门为适用于 x64 架构的 Linux 发行版设计。

  • 使用 RPM 软件包管理器可以方便地安装、升级和卸载软件包。

总之,这些文件和软件包都是为不同的操作系统和处理器架构而设计的,并且使用不同的软件包管理器来安装、升级和卸载。选择正确的文件或软件包取决于你的操作系统和处理器架构。

铁哥总结:

版本说明
ARM64 Compressed Archive(ARM64 压缩归档.tar.gz)适合移动设备的64位的压缩包,例如CentOS移动设备的安装选择,解压配置一下完事 ,特别类似window电脑那种zip包,下载下来解压就完事了,tar.gz类比zip
ARM64 RPM Package(ARM64 RPM 软件包.rpm)适合移动设备的64位的安装包,例如CentOS移动设备的安装选择,需要安装配置,有安装过程,特别类似window电脑的msi文件,下一步下一步那种一步一步安装,感觉繁琐,rpm类比msi
x64 Compressed Archive(x64 压缩归档.tar.gz)适合电脑的64位安装包,例如CentOS电脑端安装选择,解压配置一下完事,,特别类似window电脑那种zip包,下载下来解压就完事了,tar.gz类比zip
x64 Debian Package(x64 Debian 软件包.deb)只适合Ubuntu 和其他 Debian-based 发行版这种Linux系统
x64 RPM Package(x64 RPM 软件包.rpm)适合电脑的64位的安装包,例如CentOS移动设备的安装选择,需要安装配置,有安装过程,特别类似window电脑的msi文件,下一步下一步那种一步一步安装,感觉繁琐,rpm类比msi

Debian 和 CentOS 区别:

Debian 和 CentOS 是两种不同的 Linux 发行版,它们在一些方面有所不同。

  • 基础:Debian 是基于社区驱动的开源项目,由志愿者组成的开发团队维护和管理。而 CentOS 是基于 Red Hat Enterprise Linux(RHEL)的开源版本,由 CentOS 社区进行维护。因此,它们的开发和支持模型有所不同。
  • 软件包管理器:Debian 使用 dpkg 和 apt 工具作为软件包管理器,能够方便地安装、更新和卸载软件包。CentOS 使用 RPM(Red Hat Package Manager)和 yum/DNF 工具来管理软件包。这两种工具在使用方式和命令上有所不同。
  • 社区支持:Debian 的社区相对较大,有着广泛的用户群体和积极的开发者社区,提供了丰富的文档和支持资源。CentOS 社区也很活跃,但相对于 Debian 来说规模稍小。
  • 更新策略:Debian 的更新策略更加保守,注重稳定性和兼容性,发布较长时间的稳定版本。CentOS 则更注重企业级应用,提供长期支持(Long Term Support)版本,并且与 RHEL 保持高度兼容。
  • 默认软件包选择:Debian 和 CentOS 在默认安装的软件包选择上也有所不同。Debian
    更注重自由软件和开源项目,提供了大量的自由软件包。CentOS 则更加关注企业需求,提供了一些特定于服务器和企业应用场景的软件包。

总体而言,Debian 和 CentOS 都是可靠和稳定的 Linux 发行版,适用于不同的使用场景。选择哪个发行版取决于你的具体需求和偏好。如果你需要长期支持、与 RHEL 兼容以及专注于企业级应用的系统,可以选择 CentOS。如果你更喜欢社区驱动、自由软件和广泛的软件包选择,则可以选择 Debian。

铁哥总结:
企业级的一般都是用的CentOS,我工作近10年中,基本很少见到Ubantu(Debian),并且很多主流的教学视频讲解的Linux命令也是大部分基于CentOS来讲解,经常见到通过yum或者rpm来在Linux上面安装软件,很多博文默认也是把CentOS当做Linux默认发下版来写。

3、yum方式安装和安装包tar.gz方式

安装选择哪个?
答案:选择tar.gz方式安装。

先说下yum,作者用的CentOS7版本,通过命令

// 从yum仓库中查找所有jdk
yum search java | grep jdk  


没有发现JDK17!!!

要刷新 yum 软件包管理器的缓存,以获取最新的软件包信息,可以使用以下命令:

sudo yum clean all
sudo yum update

第一条命令 yum clean all 会清除 yum 的缓存,包括索引和软件包数据。这样做可以确保获取最新的软件包信息。

第二条命令 yum update 会从软件源中下载最新的软件包信息,并将系统中已安装的软件包升级到最新版本(如果有可用的更新)。执行该命令前,确保系统已经正确配置了软件源。

执行完上述命令后,yum 将会刷新并更新软件包信息。你可以根据需要进行其他操作,如安装或升级软件包。


可以看到在更新了,需要的输入y同意更新。

然后再次查看

没有发现JDK17!!!

去ChatGPT问了问,果然,CentOS7没有JDK17

所以不建议用yum安装的原因如下:

  • 像作者这种CentOS7的yum仓库压根没有,更新了也没有用,浪费时间
  • yum仓库中大多是open jdk,而作者推荐用oracle jdk,毕竟选择官方更好,好像jdk的哪个版本里面的一款垃圾回收器,两边就不一样,所以最好选择官方。
  • 在/uer/local中下载安装,方便管理,作者建议像redis等其他中间件,就采取安装包方式统一放到/usr/local目录中去,以后统一管理,清楚明白的自己的软件装在什么地方。

这里给作者的其他jdk新特性文章做个宣传,希望读者们多多点个赞
JDK8新特性
JDK9新特性
JDK10新特性
JDK11新特性
JDK12新特性
JDK13新特性
JDK14新特性
JDK15新特性
JDK16新特性
JDK17新特性
JDK18新特性
JDK19新特性
JDK20新特性
JDK21新特性

4、检查卸载之前旧版本JDK

检查版本

java -version

查看安装目录

which java

直接删除文件,注意慎用rm -rf,别最后删库跑路,下面命令是删除上面命令发现的文件。小心文件目录。

rm -rf /usr/java/jdk/jdk1.8.0_65/

修改profile文件

vim /etc/profile

在vim /etc/profile中按i删除或注释变量,最后esc后,英文输入法状态下 :wq
删除或注释以下三个变量,如不存在可忽略:JAVA_HOEM、PATH、CLASSPAHT

#set java evironment
#export JAVA_HOME=/home/jdk/jdk1.8.0_65
#export CLASSPATH=.:$JAVA_HOME/lib.tools.jar
#export PATH=$JAVA_HOME/bin:$PATH

备注:

这里补充一个yum移除自带的jdk版本

sudo yum remove *openjdk8*

5、正式安装

安装解压

# 切换目录,作者喜欢所有软件知根知底,统一管理,统一安装到/usr/local中。读者可以根据自己情况改到其他位置。
cd /usr/local

# 下载最新版oracle jdk17
wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz

# 解压
tar -zxf jdk-17_linux-x64_bin.tar.gz

配置环境变量,注意jdk17版本,不要直接拷贝,改成你的版本和你的jdk17安装路径

vim /etc/profile
// 在末尾处添加 
export JAVA_HOME=/usr/local/jdk-17.0.10   #你安装jdk的路径,你的jdk版本(不一定是17.0.10版本)
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}

// 注意:JAVA_HOME、CLASSPATH、PATH必配置,最好5个变量都配置上。
// JAVA_HOME一定注意是你安装的jdk路径,是你安装的jdk17最新版本

刷新一下

source /etc/profile

验证

java -version

本文标签: Linux