Linux(CentOS Stream 9) 安装 Java JDK 17 (源码方式安装)【图文详细教程】

这里我选择安装的 Java JDK 的版本为 17

Java JDK 下载

这里选择下载压缩包形式的 Java JDK,下载完成后,我们只需要对压缩包进行解压,将解压后的文件夹放到 CentOS Stream 9 的 /usr/local/java 目录下,然后再配置系统环境变量就可以了

下载网址:https://www.oracle.com/cn/java/technologies/downloads/#java17

先运行如下命令,查看 CentOS Stream 9 的系统架构,然后根据操作系统的系统架构选择合适的 Java JDK 压缩包进行下载

bash 复制代码
arch

x86_64:64 位系统架构

i686 或 i386:32 位系统架构

由于系统架构为 x64,所以选择下载 x64 Compressed Archive

Java JDK 发送至 CentOS Stream 9

Java JDK 压缩包下载完成后,这里我直接使用 xftp 将其上传至 CentOS Stream 9 中的 /usr/local/java 目录下

Java JDK 安装

在将 Java JDK 压缩包发送到 CentOS Stream 9 中的 /usr/local/java 目录下之后,我们可以运行如下命令,对 Java JDK 压缩包进行解压,将其中的内容解压到 /usr/local/java/ 目录下

bash 复制代码
cd /usr/local/java

tar -zxvf ./jdk17.tar.gz

-z:使用 gzip 压缩算法对压缩包进行解压

-x:对压缩包指定解压操作

-v:显示解压的过程

-f:指定要处理的压缩包文件


将 Java JDK 压缩包解压到 /usr/local/java/ 目录下,即安装完成

为 Java JDK 配置系统环境变量

Java JDK 安装完成后,我们需要将 JDK 中相关的目录添加到系统的环境变量中,使得我们可以在系统的任何位置执行 JDK 中的可执行文件命令

执行如下命令,进入修改 Linux 系统的环境变量

bash 复制代码
vim /etc/profile

在 /etc/profile 文件中的最后添加如下内容,为 JDK 配置系统环境变量

移动到文件内容的最后,按下 i 进入编辑模式

bash 复制代码
# Java JDK 系统环境变量
# Java JDK 的家目录,指定安装的 JDK 的根目录
export JAVA_HOME=/usr/local/java/jdk-17.0.10
# 配置 Java 的类加载路径,Java 从哪加载 class
# 在原来默认值(. 当前目录)的基础上添加 JDK 根目录中的 lib 目录
export CLASSPATH=.:$JAVA_HOME/lib/
# 在系统路径的基础上添加 JDK 根目录下的 bin 目录
# 使得我们可以在系统的任何位置执行 JDK 中的可执行文件命令
export PATH=$PATH:$JAVA_HOME/bin

export 导出指定的环境变量
$环境变量名 获取指定的环境变量的值
: 多个值之间的分隔

然后按下 esc 退出插入编辑模式

然后按下 :(英文的),输入 wq(写入保存并退出),按下 enter

然后我们需要执行如下命令,让系统重新读取环境变量,让新的系统环境变量配置生效

bash 复制代码
source /etc/profile

echo $PATH 读取系统环境变量 PATH 的值,查看新的系统环境变量配置是否生效

至此 Java JDK 的系统环境变量配置完成

检验 Java JDK 的系统环境变量配置是否成功

Java JDK 的系统环境变量配置完成之后,可以在任意位置,输入如下命令,查看 Java JDK 的版本,如果有输出,则系统环境变量配置是否成功,否则失败

bash 复制代码
java -version

至此 Java JDK 的系统环境变量配置成功

相关推荐
U盘失踪了4 小时前
python JSONPath 表达式生成器
linux·windows·python
海狸老先生4 小时前
Apache Tomcat样例目录session操纵漏洞解读
java·网络安全·tomcat
Jinkxs6 小时前
基础14-Java集合框架:掌握List、Set和Map的使用
java·list
锦鲤飞上天6 小时前
CentOS卸载、安装MySQL8(yum操作)
linux·adb·centos
mortimer6 小时前
一次搞懂 rsync:从入门到解决真实世界中的权限难题
linux·运维·centos
遗憾皆是温柔7 小时前
3.JVM,JRE和JDK的关系是什么
java·开发语言·jvm·面试
wb1897 小时前
服务器的Mysql 集群技术
linux·运维·服务器·数据库·笔记·mysql·云计算
洛可可白7 小时前
Spring Boot 应用结合 Knife4j 进行 API 分组授权管理配置
java·spring boot·后端
22:30Plane-Moon8 小时前
初识SpringBoot
java·spring boot·后端
huangyuchi.9 小时前
【Linux系统】详解,进程控制
linux·进程控制·进程创建·进程等待·进程程序替换·退出码·进程终止