CentOS安裝JDK

来源:https://www.cnblogs.com/java-diaosi/archive/2019/12/03/11976176.html
-Advertisement-
Play Games

一、卸載自帶OpenJDK 一些Linux系統會自帶一個OpenJDK,在安裝OracleJDK之前,先卸載掉自帶的OpenJDK: 查找已經安裝的JDK組件: 刪除OpenJDK: 檢查是否刪除完成: [root@localhost ~]# java -version-bash: java: 未找 ...


一、卸載自帶OpenJDK

  一些Linux系統會自帶一個OpenJDK,在安裝OracleJDK之前,先卸載掉自帶的OpenJDK:

[root@java-test-01 ~]# java -version
openjdk version "1.8.0_101"
OpenJDK Runtime Environment (build 1.8.0_101-b13)
OpenJDK 64-Bit Server VM (build 25.101-b13, mixed mode)

  查找已經安裝的JDK組件:

[root@localhost ~]# rpm -qa | grep java
javapackages-tools-3.4.1-11.el7.noarch
python-javapackages-3.4.1-11.el7.noarch
tzdata-java-2019c-1.el7.noarch
java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64
java-1.8.0-openjdk-headless-1.8.0.232.b09-0.el7_7.x86_64

  刪除OpenJDK:

rpm -e --nodeps javapackages-tools-3.4.1-11.el7.noarch
rpm -e --nodeps python-javapackages-3.4.1-11.el7.noarch
rpm -e --nodeps tzdata-java-2019c-1.el7.noarch
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.232.b09-0.el7_7.x86_64
當然也可以批量刪除:rpm -qa | grep java | xargs rpm -e --nodeps

  檢查是否刪除完成:

[root@localhost ~]# java -version
-bash: java: 未找到命令

二、獲取JDK8安裝包

  獲取安裝包就比較簡單了,可以通過線上獲取,也可以通過上傳的方式:

  ①、使用wget獲取安裝包

  新機中一般沒有安裝wget這個插件工具:

[root@localhost ~]# wget
-bash: /usr/bin/wget: 沒有那個文件或目錄

  可以現在安裝一下:yum -y install wget

  工具安裝完成之後就可以使用wget來線上獲取JDK了

  wget https://download.oracle.com/otn/java/jdk/8u231-b11/5b13a193868b4bf28bcb45c792fce896/jdk-8u231-linux-x64.tar.gz?AuthParam=1575342241_20a55c4090b52a0fcd6732c4c960a760

  一般我們將自己的引用安裝到 /usr/local/ 下麵,因此我在/user/local下創建一個jdk1.8的文件夾,將剛剛獲取到的安裝包移動到這個目錄下。

  然後使用tar -zxvf jdk-8u231-linux-x64.tar.gz 命令解壓安裝包,解壓之後得到目錄 jdk1.8.0_231

  ②、上傳安裝包

  在linxu系統中,上傳文件我一般喜歡使用rz命令,當然也是需要裝一個插件 yum install lrzsz

  在這個插件中,rz 為上傳文件,直接輸入rz 會彈出一個選擇框,選擇上傳的文件即可

  在這個插件中,sz 為下載文件,直接輸入 sz + 文件名 就開始下載了

  做完上面的工作之後,將本地安裝包上傳到我喜歡的目錄 /usr/local/jdk1.8,然後使用tar -zxvf jdk-8u231-linux-x64.tar.gz 命令解壓安裝包,解壓之後得到目錄 jdk1.8.0_231

三、安裝JDK8

  在第二步驟中,已經獲取到了JDK8的安裝包,並且已經解壓了。其實JDK8基本就完成了,只需配置JDK8的環境變數就好了

  JDK8環境變數配置在profile文件中:vim /etc/profile 文件中追加如下內容:

export JAVA_HOME=/usr/local/jdk1.8/jdk1.8.0_231 (這個是你自己的JDK目錄)
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib

  配置好之後需要該文件立即生效可以執行如下命令 : . /etc/profile 或者 source /etc/profile

  然後是驗證是否安裝成功,依次輸入下麵三個命令 : java、javac、java -version 這三個命令都正常輸出,則表示安裝成功,當然如果javac沒有成功也沒有關係,

  這個是開發java的使用才用到的命令,開發環境的東西,並不會影響運行環境。

四、安裝OpenJDK

  OpenJDK的源碼基本和Oracle JDK的源碼一致,因此很多公司也直接使用OpenJDK作為java環境,下麵就來安裝openJDK

  使用 yum search java|grep jdk 或者 yum -y list java* 會看到輸出一片內容:

  

  這一片內容都不用管,直接提取主要信息,安裝就好 yum -y install java-1.8.0-openjdk  安裝位置預設在 /usr/lib/jvm 目錄下。

  按照上面的步驟配置環境變數,依次執行 java、javac、java -version 你會發現 javac命令怎麼都不能執行,因為有一個插件我們還沒有安裝:yum install java-1.8.0-openjdk-devel.x86_64

  如果想不安裝插件:yum install java-1.8.0-openjdk* -y 將OpenJDK所有的一套東西全部裝上,就不用單獨去裝別的依賴插件

  其實也可以不配置環境變數,因為這種方式安裝OpenJDK的時候,自動創建了軟連接,java -version 依然正常輸出。

五、使用rpm安裝JDK

  使用rpm安裝JDK,則需要rpm為尾碼的安裝包:rpm -ivh jdk-8u181-linux-x64.rpm


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 今天,下午刷手機的時候,突然看到kali出了一個非常新穎的主題;該主題可以使得kali系統偽裝成windows 10而變得低調起來;就像下麵這樣: 具體新聞鏈接:https://www.freebuf.com/news/221582.html Kali Undercover模式 如果你在某些環境中想 ...
  • 最近需要使用 kali 源安裝一些軟體: 配置 sources.list,根據如下鏈接:http://mirrors.ustc.edu.cn/help/kali.html 獲取 公鑰;apt-key adv --keyserver keyserver.ubuntu.com --recv ED444F ...
  • 前言 上周四,伺服器突然掛了。SSH都連接不上,日常的小程式後臺直接down掉,小程式每日大概3K左右訪問量。於是乎就開啟了,排查之後。 排查階段 什麼先別說,先把服務恢復再說。重啟阿裡雲伺服器,SSH連接。開啟nginx,redis,mysql,java服務。一系列操作,先把服務先啟動了。 伺服器 ...
  • 一 Kubernetes DNS介紹1.1 Kubernetes DNS發展作為服務發現機制的基本功能,在集群內需要能夠通過服務名對服務進行訪問,因此需要一個集群範圍內的DNS服務來完成從服務名到ClusterIP的解析。DNS服務在Kubernetes的發展過程中經歷了3個階段,SkyDNS --... ...
  • 一 前言 幾大RPC框架介紹 1.支持多語言的RPC框架,google的gRPC,Apache(facebook)的Thrift 2.只支持特定語言的RPC框架,例如新浪的Motan 3.支持服務治理等服務化特性的分散式框架,例如阿裡的dubbo 4.擁有完整生態的spring cloud spri ...
  • 操作系統:macOs High Sierra 10.13.6 1.我用的homebrew安裝的nignx1.15.9,安裝完成之後會有下麵的提示: 網站根目錄在:/usr/local/var/www nginx配置文件位置:/usr/local/etc/nginx 註意:nginx被安裝到的目錄位置 ...
  • 問題描述:生產環境中需要經常運用NFS掛載,就在測試環境中測試一下,將伺服器中192.168.1.4 /u01/app/oracle/product/11.2.0/dbhome_1/dbs 掛載到192.168.1.3的/nfs/nfs_orcl, 將192.168.1.5/u01/app/orac ...
  • 這裡僅介紹我在Ubuntu 18.04下用到的工具軟體,都是正版免費的。 1、Office辦公套件 Ubuntu 18.04預設安裝後會提供LibreOffice辦公套件,功能還是可以的,但這裡推薦使用國產的WPS。WPS官方提供了免費的Linux版下載,下載地址:WPS Linux版本。初次使用W ...
一周排行
    -Advertisement-
    Play Games
  • 1. 說明 /* Performs operations on System.String instances that contain file or directory path information. These operations are performed in a cross-pla ...
  • 視頻地址:【WebApi+Vue3從0到1搭建《許可權管理系統》系列視頻:搭建JWT系統鑒權-嗶哩嗶哩】 https://b23.tv/R6cOcDO qq群:801913255 一、在appsettings.json中設置鑒權屬性 /*jwt鑒權*/ "JwtSetting": { "Issuer" ...
  • 引言 集成測試可在包含應用支持基礎結構(如資料庫、文件系統和網路)的級別上確保應用組件功能正常。 ASP.NET Core 通過將單元測試框架與測試 Web 主機和記憶體中測試伺服器結合使用來支持集成測試。 簡介 集成測試與單元測試相比,能夠在更廣泛的級別上評估應用的組件,確認多個組件一起工作以生成預 ...
  • 在.NET Emit編程中,我們探討了運算操作指令的重要性和應用。這些指令包括各種數學運算、位操作和比較操作,能夠在動態生成的代碼中實現對數據的處理和操作。通過這些指令,開發人員可以靈活地進行算術運算、邏輯運算和比較操作,從而實現各種複雜的演算法和邏輯......本篇之後,將進入第七部分:實戰項目 ...
  • 前言 多表頭表格是一個常見的業務需求,然而WPF中卻沒有預設實現這個功能,得益於WPF強大的控制項模板設計,我們可以通過修改控制項模板的方式自己實現它。 一、需求分析 下圖為一個典型的統計表格,統計1-12月的數據。 此時我們有一個需求,需要將月份按季度劃分,以便能夠直觀地看到季度統計數據,以下為該需求 ...
  • 如何將 ASP.NET Core MVC 項目的視圖分離到另一個項目 在當下這個年代 SPA 已是主流,人們早已忘記了 MVC 以及 Razor 的故事。但是在某些場景下 SSR 還是有意想不到效果。比如某些靜態頁面,比如追求首屏載入速度的時候。最近在項目中回歸傳統效果還是不錯。 有的時候我們希望將 ...
  • System.AggregateException: 發生一個或多個錯誤。 > Microsoft.WebTools.Shared.Exceptions.WebToolsException: 生成失敗。檢查輸出視窗瞭解更多詳細信息。 內部異常堆棧跟蹤的結尾 > (內部異常 #0) Microsoft ...
  • 引言 在上一章節我們實戰了在Asp.Net Core中的項目實戰,這一章節講解一下如何測試Asp.Net Core的中間件。 TestServer 還記得我們在集成測試中提供的TestServer嗎? TestServer 是由 Microsoft.AspNetCore.TestHost 包提供的。 ...
  • 在發現結果為真的WHEN子句時,CASE表達式的真假值判斷會終止,剩餘的WHEN子句會被忽略: CASE WHEN col_1 IN ('a', 'b') THEN '第一' WHEN col_1 IN ('a') THEN '第二' ELSE '其他' END 註意: 統一各分支返回的數據類型. ...
  • 在C#編程世界中,語法的精妙之處往往體現在那些看似微小卻極具影響力的符號與結構之中。其中,“_ =” 這一組合突然出現還真不知道什麼意思。本文將深入剖析“_ =” 的含義、工作原理及其在實際編程中的廣泛應用,揭示其作為C#語法奇兵的重要角色。 一、下劃線 _:神秘的棄元符號 下劃線 _ 在C#中並非 ...