Linux系統(tǒng)安裝JDK三種主流的方式
一 前言
Linux系統(tǒng)版本是CentOS-7,安裝JDK環(huán)境的方式有YUM源倉庫安裝、RPM包手動(dòng)安裝、和tar.gz壓縮包手動(dòng)安裝這三種主流的方式;
Linux系統(tǒng)中安裝JDK環(huán)境之前,先卸載掉CentOS-7默認(rèn)安裝的OpenJDK,確保環(huán)境純凈,再去安裝項(xiàng)目需要的JDK版本;
檢查Linux系統(tǒng)中JDK版本的命令:java -version
[root@MiWiFi-RD04-srv ~]# java -version openjdk version "1.8.0_412" OpenJDK Runtime Environment (build 1.8.0_412-b08) OpenJDK 64-Bit Server VM (build 25.412-b08, mixed mode)
檢查Linux系統(tǒng)中RPM包安裝的JDK,并卸載已安裝的JDK相關(guān)包:
[root@MiWiFi-RD04-srv ~]# java -version openjdk version "1.8.0_412" OpenJDK Runtime Environment (build 1.8.0_412-b08) OpenJDK 64-Bit Server VM (build 25.412-b08, mixed mode) [root@MiWiFi-RD04-srv ~]# rpm -qa | grep java python-javapackages-3.4.1-11.el7.noarch tzdata-java-2024a-1.el7.noarch java-1.7.0-openjdk-1.7.0.261-2.6.22.2.el7_8.x86_64 java-1.8.0-openjdk-headless-1.8.0.412.b08-1.el7_9.x86_64 java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 java-1.7.0-openjdk-headless-1.7.0.261-2.6.22.2.el7_8.x86_64 javapackages-tools-3.4.1-11.el7.noarch [root@MiWiFi-RD04-srv ~]# rpm -e --nodeps python-javapackages-3.4.1-11.el7.noarch [root@MiWiFi-RD04-srv ~]# rpm -e --nodeps tzdata-java-2024a-1.el7.noarch [root@MiWiFi-RD04-srv ~]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.261-2.6.22.2.el7_8.x86_64 [root@MiWiFi-RD04-srv ~]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.412.b08-1.el7_9.x86_64 [root@MiWiFi-RD04-srv ~]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 [root@MiWiFi-RD04-srv ~]# rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.261-2.6.22.2.el7_8.x86_64 [root@MiWiFi-RD04-srv ~]# rpm -e --nodeps javapackages-tools-3.4.1-11.el7.noarch [root@MiWiFi-RD04-srv ~]# rpm -qa | grep java [root@MiWiFi-RD04-srv ~]# java -version -bash: /usr/bin/java: 沒有那個(gè)文件或目錄 [root@MiWiFi-RD04-srv ~]#
上述步驟清理完成Linux系統(tǒng)中默認(rèn)的OpenJDK,可以安裝新的JDK環(huán)境
二 YUM源倉庫安裝
YUM(Yellowdog Updater, Modified)適合快速安裝、無需自定義路徑,系統(tǒng)自動(dòng)管理依賴和環(huán)境變量;
在默認(rèn)情況下,YUM倉庫中提供的Java包是OpenJDK,而不是OracleJDK;
更新YUM軟件包列表:
[root@MiWiFi-RD04-srv ~]# yum update -y 已加載插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile No packages marked for update
查找可用的JDK版本:
[root@MiWiFi-RD04-srv ~]# yum search java | grep jdk ldapjdk-javadoc.noarch : Javadoc for ldapjdk java-1.6.0-openjdk.x86_64 : OpenJDK Runtime Environment java-1.6.0-openjdk-demo.x86_64 : OpenJDK Demos java-1.6.0-openjdk-devel.x86_64 : OpenJDK Development Environment java-1.6.0-openjdk-javadoc.x86_64 : OpenJDK API Documentation java-1.6.0-openjdk-src.x86_64 : OpenJDK Source Bundle java-1.7.0-openjdk.x86_64 : OpenJDK Runtime Environment java-1.7.0-openjdk-accessibility.x86_64 : OpenJDK accessibility connector java-1.7.0-openjdk-demo.x86_64 : OpenJDK Demos java-1.7.0-openjdk-devel.x86_64 : OpenJDK Development Environment java-1.7.0-openjdk-headless.x86_64 : The OpenJDK runtime environment without java-1.7.0-openjdk-javadoc.noarch : OpenJDK API Documentation java-1.7.0-openjdk-src.x86_64 : OpenJDK Source Bundle java-1.8.0-openjdk.i686 : OpenJDK Runtime Environment 8 java-1.8.0-openjdk.x86_64 : OpenJDK 8 Runtime Environment java-1.8.0-openjdk-accessibility.i686 : OpenJDK accessibility connector java-1.8.0-openjdk-accessibility.x86_64 : OpenJDK accessibility connector java-1.8.0-openjdk-demo.i686 : OpenJDK Demos 8 java-1.8.0-openjdk-demo.x86_64 : OpenJDK 8 Demos java-1.8.0-openjdk-devel.i686 : OpenJDK Development Environment 8 java-1.8.0-openjdk-devel.x86_64 : OpenJDK 8 Development Environment java-1.8.0-openjdk-headless.i686 : OpenJDK Headless Runtime Environment 8 java-1.8.0-openjdk-headless.x86_64 : OpenJDK 8 Headless Runtime Environment java-1.8.0-openjdk-javadoc.noarch : OpenJDK 8 API documentation java-1.8.0-openjdk-javadoc-zip.noarch : OpenJDK 8 API documentation compressed java-1.8.0-openjdk-src.i686 : OpenJDK Source Bundle 8 java-1.8.0-openjdk-src.x86_64 : OpenJDK 8 Source Bundle java-11-openjdk.i686 : OpenJDK Runtime Environment 11 java-11-openjdk.x86_64 : OpenJDK 11 Runtime Environment java-11-openjdk-demo.i686 : OpenJDK Demos 11 java-11-openjdk-demo.x86_64 : OpenJDK 11 Demos java-11-openjdk-devel.i686 : OpenJDK Development Environment 11 java-11-openjdk-devel.x86_64 : OpenJDK 11 Development Environment java-11-openjdk-headless.i686 : OpenJDK Headless Runtime Environment 11 java-11-openjdk-headless.x86_64 : OpenJDK 11 Headless Runtime Environment java-11-openjdk-javadoc.i686 : OpenJDK 11 API documentation java-11-openjdk-javadoc.x86_64 : OpenJDK 11 API documentation java-11-openjdk-javadoc-zip.i686 : OpenJDK 11 API documentation compressed in a java-11-openjdk-javadoc-zip.x86_64 : OpenJDK 11 API documentation compressed in java-11-openjdk-jmods.i686 : JMods for OpenJDK 11 java-11-openjdk-jmods.x86_64 : JMods for OpenJDK 11 java-11-openjdk-src.i686 : OpenJDK Source Bundle 11 java-11-openjdk-src.x86_64 : OpenJDK 11 Source Bundle java-11-openjdk-static-libs.i686 : OpenJDK libraries for static linking 11 java-11-openjdk-static-libs.x86_64 : OpenJDK 11 libraries for static linking ldapjdk.noarch : The Mozilla LDAP Java SDK [root@MiWiFi-RD04-srv ~]#
選擇java-1.8.0-openjdk-devel.x86_64版本進(jìn)行安裝:
[root@MiWiFi-RD04-srv ~]# java -version -bash: /usr/bin/java: 沒有那個(gè)文件或目錄 [root@MiWiFi-RD04-srv ~]# yum install -y java-1.8.0-openjdk-devel.x86_64 已加載插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile 正在解決依賴關(guān)系 --> 正在檢查事務(wù) ---> 軟件包 java-1.8.0-openjdk-devel.x86_64.1.1.8.0.412.b08-1.el7_9 將被 安裝 已安裝: java-1.8.0-openjdk-devel.x86_64 1:1.8.0.412.b08-1.el7_9 作為依賴被安裝: java-1.8.0-openjdk.x86_64 1:1.8.0.412.b08-1.el7_9 java-1.8.0-openjdk-headless.x86_64 1:1.8.0.412.b08-1.el7_9 javapackages-tools.noarch 0:3.4.1-11.el7 python-javapackages.noarch 0:3.4.1-11.el7 tzdata-java.noarch 0:2024a-1.el7 完畢! [root@MiWiFi-RD04-srv ~]# java -version openjdk version "1.8.0_412" OpenJDK Runtime Environment (build 1.8.0_412-b08) OpenJDK 64-Bit Server VM (build 25.412-b08, mixed mode) [root@MiWiFi-RD04-srv ~]#
驗(yàn)證Java是否安裝成功:
[root@MiWiFi-RD04-srv ~]# java -version openjdk version "1.8.0_412" OpenJDK Runtime Environment (build 1.8.0_412-b08) OpenJDK 64-Bit Server VM (build 25.412-b08, mixed mode) [root@MiWiFi-RD04-srv ~]#
YUM安裝JDK的默認(rèn)路徑:
[root@MiWiFi-RD04-srv ~]# ll /usr/lib/jvm 總用量 0 lrwxrwxrwx. 1 root root 26 1月 19 08:15 java -> /etc/alternatives/java_sdk lrwxrwxrwx. 1 root root 32 1月 19 08:15 java-1.8.0 -> /etc/alternatives/java_sdk_1.8.0 lrwxrwxrwx. 1 root root 40 1月 19 08:15 java-1.8.0-openjdk -> /etc/alternatives/java_sdk_1.8.0_openjdk drwxr-xr-x. 7 root root 135 1月 19 08:15 java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 lrwxrwxrwx. 1 root root 34 1月 19 08:15 java-openjdk -> /etc/alternatives/java_sdk_openjdk lrwxrwxrwx. 1 root root 21 1月 19 08:15 jre -> /etc/alternatives/jre lrwxrwxrwx. 1 root root 27 1月 19 08:15 jre-1.8.0 -> /etc/alternatives/jre_1.8.0 lrwxrwxrwx. 1 root root 35 1月 19 08:15 jre-1.8.0-openjdk -> /etc/alternatives/jre_1.8.0_openjdk lrwxrwxrwx. 1 root root 51 1月 19 08:15 jre-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64 -> java-1.8.0-openjdk-1.8.0.412.b08-1.el7_9.x86_64/jre lrwxrwxrwx. 1 root root 29 1月 19 08:15 jre-openjdk -> /etc/alternatives/jre_openjdk
查看已安裝的JDK:
[root@MiWiFi-RD04-srv ~]# yum list installed | grep -i jdk copy-jdk-configs.noarch 3.3-11.el7_9 @updates java-1.8.0-openjdk.x86_64 1:1.8.0.412.b08-1.el7_9 @updates java-1.8.0-openjdk-devel.x86_64 1:1.8.0.412.b08-1.el7_9 @updates java-1.8.0-openjdk-headless.x86_64 1:1.8.0.412.b08-1.el7_9 @updates [root@MiWiFi-RD04-srv ~]#
卸載已安裝的JDK,可以逐個(gè)刪除,也可以匹配多個(gè)刪除:
[root@MiWiFi-RD04-srv ~]# yum remove -y java-1.8.0-openjdk.x86_64 [root@MiWiFi-RD04-srv ~]# yum remove -y java-1.8.0-openjdk*
檢查是否卸載完成:
[root@MiWiFi-RD04-srv ~]# yum list installed | grep -i jdk copy-jdk-configs.noarch 3.3-11.el7_9 @updates [root@MiWiFi-RD04-srv ~]# java -version -bash: /usr/bin/java: 沒有那個(gè)文件或目錄 [root@MiWiFi-RD04-srv ~]# ll /usr/lib/jvm 總用量 0 [root@MiWiFi-RD04-srv ~]#
二 RPM包安裝
如果需要安裝OracleJDK,可以使用RPM包安裝
2.1 官網(wǎng)下載RPM包
訪問官網(wǎng)(https://www.oracle.com/),然后點(diǎn)擊上方菜單欄第一個(gè)Products菜單,選擇展開的Hardware and Software中的Java

然后選擇Download Java

選擇需要的jdk-8u481-linux-x64.rpm進(jìn)行下載

在/usr/local/目錄下創(chuàng)建java文件夾,將下載好的jdk-8u481-linux-x64.rpm上傳至java文件夾
[root@MiWiFi-RD04-srv ~]# cd /usr/local/ [root@MiWiFi-RD04-srv local]# mkdir java [root@MiWiFi-RD04-srv local]# cd java [root@MiWiFi-RD04-srv java]# pwd /usr/local/java [root@MiWiFi-RD04-srv java]# ll 總用量 80948 -rw-r--r--. 1 root root 82890727 1月 19 09:24 jdk-8u481-linux-x64.rpm [root@MiWiFi-RD04-srv java]#
2.2 安裝RPM包
[root@MiWiFi-RD04-srv java]# rpm -ivh jdk-8u481-linux-x64.rpm 警告:jdk-8u481-linux-x64.rpm: 頭V3 RSA/SHA256 Signature, 密鑰 ID 8d8b756f: NOKEY 準(zhǔn)備中... ################################# [100%] 正在升級/安裝... 1:jdk-1.8-2000:1.8.0_481-10 ################################# [100%] [root@MiWiFi-RD04-srv java]# java -version java version "1.8.0_481" Java(TM) SE Runtime Environment (build 1.8.0_481-b10) Java HotSpot(TM) 64-Bit Server VM (build 25.481-b10, mixed mode) [root@MiWiFi-RD04-srv java]#
RPM方式的JDK默認(rèn)安裝目錄/usr/java
[root@MiWiFi-RD04-srv java]# pwd /usr/java [root@MiWiFi-RD04-srv java]# ll 總用量 0 lrwxrwxrwx. 1 root root 16 1月 19 09:27 default -> /usr/java/latest lrwxrwxrwx. 1 root root 37 1月 19 09:27 jdk1.8.0-x64 -> /usr/lib/jvm/jdk-1.8.0_481-oracle-x64 lrwxrwxrwx. 1 root root 35 1月 19 09:27 jdk-1.8-oracle-x64 -> /etc/alternatives/java_jdk_8_oracle lrwxrwxrwx. 1 root root 37 1月 19 09:27 latest -> /usr/lib/jvm/jdk-1.8.0_481-oracle-x64
2.3 卸載RPM包
查看RPM方式的JDK安裝包
[root@MiWiFi-RD04-srv java]# rpm -qa | grep -i jdk jdk-1.8-1.8.0_481-10.x86_64
卸載RPM方式的JDK安裝包
[root@MiWiFi-RD04-srv java]# rpm -e --nodeps jdk-1.8-1.8.0_481-10.x86_64 [root@MiWiFi-RD04-srv java]# pwd /usr/java [root@MiWiFi-RD04-srv java]# ll 總用量 0 [root@MiWiFi-RD04-srv java]# java -version -bash: /usr/bin/java: 沒有那個(gè)文件或目錄 [root@MiWiFi-RD04-srv java]#
三 壓縮包安裝
3.1 安裝JDK
在Oracle官網(wǎng)下載jdk-8u481-linux-x64.tar.gz壓縮包

將下載好的jdk-8u481-linux-x64.tar.gz壓縮包放在/usr/local/java/目錄下
[root@MiWiFi-RD04-srv java]# cd /usr/local/java/ [root@MiWiFi-RD04-srv java]# pwd /usr/local/java [root@MiWiFi-RD04-srv java]# ll 總用量 158588 -rw-r--r--. 1 root root 82890727 1月 19 09:24 jdk-8u481-linux-x64.rpm -rw-r--r--. 1 root root 79501187 1月 19 09:46 jdk-8u481-linux-x64.tar.gz [root@MiWiFi-RD04-srv java]#
解壓jdk-8u481-linux-x64.tar.gz壓縮包
[root@MiWiFi-RD04-srv java]# ll 總用量 158588 -rw-r--r--. 1 root root 82890727 1月 19 09:24 jdk-8u481-linux-x64.rpm -rw-r--r--. 1 root root 79501187 1月 19 09:46 jdk-8u481-linux-x64.tar.gz [root@MiWiFi-RD04-srv java]# tar -zxvf jdk-8u481-linux-x64.tar.gz [root@MiWiFi-RD04-srv java]# ll 總用量 158588 drwxr-xr-x. 8 root root 213 1月 19 09:49 jdk1.8.0_481 -rw-r--r--. 1 root root 82890727 1月 19 09:24 jdk-8u481-linux-x64.rpm -rw-r--r--. 1 root root 79501187 1月 19 09:46 jdk-8u481-linux-x64.tar.gz [root@MiWiFi-RD04-srv java]#
在/etc/profile文件中配置環(huán)境變量

export JAVA_HOME=/usr/local/java/jdk1.8.0_481 export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib export PATH=$PATH:$JAVA_HOME/bin
刷新配置文件
[root@MiWiFi-RD04-srv jdk1.8.0_481]# source /etc/profile
驗(yàn)證JDK是否安裝完成
[root@MiWiFi-RD04-srv jdk1.8.0_481]# java -version java version "1.8.0_481" Java(TM) SE Runtime Environment (build 1.8.0_481-b10) Java HotSpot(TM) 64-Bit Server VM (build 25.481-b10, mixed mode)
3.2 卸載JDK
刪除JDK安裝目錄:
[root@MiWiFi-RD04-srv java]# cd /usr/local/java/ [root@MiWiFi-RD04-srv java]# pwd /usr/local/java [root@MiWiFi-RD04-srv java]# ll 總用量 158588 drwxr-xr-x. 8 root root 213 1月 19 09:49 jdk1.8.0_481 -rw-r--r--. 1 root root 82890727 1月 19 09:24 jdk-8u481-linux-x64.rpm -rw-r--r--. 1 root root 79501187 1月 19 09:46 jdk-8u481-linux-x64.tar.gz [root@MiWiFi-RD04-srv java]# rm -rf /usr/local/java/jdk1.8.0_481 [root@MiWiFi-RD04-srv java]# ll 總用量 158588 -rw-r--r--. 1 root root 82890727 1月 19 09:24 jdk-8u481-linux-x64.rpm -rw-r--r--. 1 root root 79501187 1月 19 09:46 jdk-8u481-linux-x64.tar.gz [root@MiWiFi-RD04-srv java]#
刪除配置文件中JDK相關(guān)環(huán)境變量配置:

刷新配置文件
[root@MiWiFi-RD04-srv java]# source /etc/profile
驗(yàn)證卸載是否完成
[root@MiWiFi-RD04-srv java]# java -version bash: java: 未找到命令...
三種安裝和卸載JDK的方式,YUM源方式安裝最為便捷,自動(dòng)配置環(huán)境,但安裝的是OpenJDK,不是OracleJDK,RPM包方式安裝可以選擇合適的OracleJDK版本進(jìn)行安裝,安裝也很方便,壓縮包安裝最為靈活,而且支持多版本共存,需要手動(dòng)配置環(huán)境變量。
總結(jié)
到此這篇關(guān)于Linux系統(tǒng)安裝JDK三種主流的方式的文章就介紹到這了,更多相關(guān)Linux安裝JDK內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java畢業(yè)設(shè)計(jì)實(shí)戰(zhàn)之在線蛋糕銷售商城的實(shí)現(xiàn)
這是一個(gè)使用了java+JSP+Springboot+maven+mysql+ThymeLeaf+FTP開發(fā)的在線蛋糕銷售商城,是一個(gè)畢業(yè)設(shè)計(jì)的實(shí)戰(zhàn)練習(xí),具有線上蛋糕商城該有的所有功能,感興趣的朋友快來看看吧2022-01-01
Java多態(tài)概念、實(shí)現(xiàn)機(jī)制與實(shí)踐應(yīng)用詳解
多態(tài)是指同一個(gè)方法在不同對象上具有不同的行為,通過多態(tài)程序可以在運(yùn)行時(shí)決定調(diào)用哪個(gè)方法,從而提高代碼的靈活性和可擴(kuò)展性,這篇文章主要介紹了Java多態(tài)概念、實(shí)現(xiàn)機(jī)制與實(shí)踐應(yīng)用的相關(guān)資料,需要的朋友可以參考下2026-01-01
springboot中使用ElasticSearch的詳細(xì)教程
這篇文章主要介紹了ElasticSearch在springboot中使用的詳細(xì)教程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-05-05
Java那點(diǎn)兒事之Map集合不為人知的秘密有哪些
Map用于保存具有映射關(guān)系的數(shù)據(jù),Map集合里保存著兩組值,一組用于保存Map的key,另一組保存著Map的value,和查字典類似,通過key找到對應(yīng)的value,通過頁數(shù)找到對應(yīng)的信息。用學(xué)生類來說,key相當(dāng)于學(xué)號,value對應(yīng)name,age,sex等信息。用這種對應(yīng)關(guān)系方便查找2021-10-10
SpringBoot2.1.4中的錯(cuò)誤處理機(jī)制
這篇文章主要介紹了SpringBoot2.1.4中的錯(cuò)誤處理機(jī)制,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-10-10
java多線程事務(wù)加鎖引發(fā)bug用戶重復(fù)注冊解決分析
這篇文章主要為大家介紹了java多線程事務(wù)加鎖引發(fā)bug用戶重復(fù)注冊解決分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11

