17、Linux下安装jdk(CentOS7)


本文档全文使用root账户执行,如果使用其他账户,命令前加sudo

1、准备工作

(1)检查服务器是否存在jdk

存在的话卸载,不存在直接略过准备工作内容
在这里插入图片描述

(2)卸载自带jdk

列出所有已经被安装的,名字中包含jdk字符串的RPM包。

rpm -qa|grep jdk

在这里插入图片描述
依次卸载,直至rpm -qa|grep jdk执行后,显示为空即可。

yum -y remove java-1.7.0-openjdk-headless-1.7.0.261-2.6.22.2.el7_8.x86_64
yum -y remove java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64
yum -y remove copy-jdk-configs-3.3-10.el7_5.noarch

或者使用如下命令进行删除

rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.261-2.6.22.2.el7_8.x86_64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.262.b10-1.el7.x86_64
rpm -e --nodeps copy-jdk-configs-3.3-10.el7_5.noarch

拓展:yum -y removerpm -e --nodeps的区别
yum可以更好地解决依赖关系,yum remove移除软件包时更加安全。加入某个包被其它包依赖,用yum remove是无法移除的。
rpm -e加上--nodeps可以忽略依赖关系,强制移除某个软件包。但是这有可能是系统的某些程序无法运行。

2、下载

官网地址:Java Downloads | Oracle 中国
在这里插入图片描述

3、安装

(1)新建目录文件夹

/opt/目录下新建jdk文件夹

# 新建jdk文件夹
mkdir /opt/jdk
ll

在这里插入图片描述

(2)上传jdk压缩包

使用sftp工具将文件压缩包上传到该目录下
在这里插入图片描述

(3)解压jdk压缩包

# 语法:tar -zxvf [压缩包名称]
tar -zxvf jdk-17_linux-x64_bin.tar.gz

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

(4)手动生成jre

jdk17 版本解压完后发现是没有 jre 文件夹的。现在不区分 jdkjre 了因为 jdk 本身已经模块化了模块化了之后,用户自定义运行时, runtime 所以理论上存在有,不同的系统,用的 java runtime (简称 jre )是不一样的可能性这时候再提供一个统一的 jre ,就会误导所以就没有 jre 了所以需要我们手动生成。
在这里插入图片描述

bin/jlink --module-path jmods --add-modules java.desktop --output jre

此时 jre 文件夹生成完毕。
在这里插入图片描述

(5)配置环境变量

vim /etc/profile

将如下内容添加至配置文件中,JAVA_HOME=/opt/jdk/jdk-17.0.6为自己实际jdk安装目录。如果和我的不一致,记得修改。

export JAVA_HOME=/opt/jdk/jdk-17.0.6
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH

或者(二者都可以,二选一即可)

export JAVA_HOME=/opt/jdk/jdk-17.0.6
export JRE_HOME=$JAVA_HOME/jre
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

在这里插入图片描述

编辑完之后,保存并退出。然后输入以下指令,刷新环境配置使其生效。
(此命令如果出现bash: ​source: 未找到命令...不要复制粘贴命令,手动敲一下即可)

​source /etc/profile

4、验证

输入如下命令,检测是否安装成功

java -version

在这里插入图片描述
出现版本说明成功了。

猜你喜欢

转载自blog.csdn.net/weixin_61470350/article/details/129352866
今日推荐