使用CentOS 7.5解除安裝自帶jdk安裝自己的JDK1.8

tony0087發表於2021-09-09

本文主要介紹的是如何是Linux環境下安裝JDK的,因為Linux環境下,很多時候也離不開Java的,下面筆者就和大家一起分享如何jdk1.8的過程吧。

一、安裝環境

  • 本機系統:Win 10

  • 虛擬機器軟體:VMware PRO 14

  • 虛擬機器Linux系統:CentOS 7.5

  • JDK版本:1.8.0_191

  • 工具:SecureCRT

  • 說明:本文是透過SecureCRT工具遠端連線Linux操作,如果是直接在Linux視覺化介面操作那就更方便了,原理一樣。

二、安裝步驟

  • 下載安裝包
      下載Linux環境下的jdk1.8,請去(官網)中下載jdk的安裝檔案。
      由於我的Linux是64位的,

0、我們先有一個乾淨的Linux的環境
  進行如下操作:

[root@itheima ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core) 
[root@itheima ~]# ll
總用量 0

1、檢查一下linux系統中的jdk版本

[root@itheima ~]# java -version

  顯示如下:

openjdk version "1.8.0_161"
OpenJDK Runtime Environment (build 1.8.0_161-b14)
OpenJDK 64-Bit Server VM (build 25.161-b14, mixed mode)

2、檢測linux下的jdk安裝包

[root@itheima ~]# rpm -qa | grep java
或者
[root@itheima ~]# rpm -qa | grep jdk

  顯示如下:

python-javapackages-3.4.1-11.el7.noarch
java-1.8.0-openjdk-headless-1.8.0.161-2.b14.el7.x86_64
tzdata-java-2018c-1.el7.noarch
java-1.7.0-openjdk-1.7.0.171-2.6.13.2.el7.x86_64
java-1.8.0-openjdk-1.8.0.161-2.b14.el7.x86_64
javapackages-tools-3.4.1-11.el7.noarch
java-1.7.0-openjdk-headless-1.7.0.171-2.6.13.2.el7.x86_64
或者
copy-jdk-configs-3.3-2.el7.noarch
java-1.8.0-openjdk-headless-1.8.0.161-2.b14.el7.x86_64
java-1.7.0-openjdk-1.7.0.171-2.6.13.2.el7.x86_64
java-1.8.0-openjdk-1.8.0.161-2.b14.el7.x86_64
java-1.7.0-openjdk-headless-1.7.0.171-2.6.13.2.el7.x86_64

3、先解除安裝openjdk(共4個檔案)

[root@itheima ~]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.161-2.b14.el7.x86_64
[root@itheima ~]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.171-2.6.13.2.el7.x86_64
[root@itheima ~]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.161-2.b14.el7.x86_64
[root@itheima ~]# rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.171-2.6.13.2.el7.x86_64

  刪完之後可以再透過:rpm -qa | grep java 或 rpm -qa | grep jdk 命令來查詢出是否刪除掉

[root@itheima ~]# rpm -qa | grep java
python-javapackages-3.4.1-11.el7.noarch
tzdata-java-2018c-1.el7.noarch
javapackages-tools-3.4.1-11.el7.noarch
[root@itheima ~]# rpm -qa | grep jdk
copy-jdk-configs-3.3-2.el7.noarch
[root@itheima ~]# 

4、安裝新的Oracle JDK1.8
  透過命令:cd /usr/local/ 進入local目錄,並透過ll(兩個小寫的L)命令或者ls命令(ll 本身不是命令,只是 ls -l 命令的一個別名)列出當前目錄下得所有非隱含的檔案,如果想要看到隱含(以. 開頭的,如:.test.txt)檔案資訊可透過ll -a來檢視,如下:

[root@itheima ~]# cd /usr/local/
[root@itheima local]# ll
總用量 0
drwxr-xr-x. 2 root root  6 4月  11 2018 bin
drwxr-xr-x. 2 root root  6 4月  11 2018 etc
drwxr-xr-x. 2 root root  6 4月  11 2018 games
drwxr-xr-x. 2 root root  6 4月  11 2018 include
drwxr-xr-x. 2 root root  6 4月  11 2018 lib
drwxr-xr-x. 2 root root  6 4月  11 2018 lib64
drwxr-xr-x. 2 root root  6 4月  11 2018 libexec
drwxr-xr-x. 2 root root  6 4月  11 2018 sbin
drwxr-xr-x. 5 root root 49 11月  2 00:50 share
drwxr-xr-x. 2 root root  6 4月  11 2018 src

  進入local目錄之後透過mkdir java命令來建立java目錄存放自己的jdk。
  擴充套件:如果你想一次性在同一級目錄下建立多個平級的目錄可以透過mkdir brother1 brother2(如要建立更多就在後面加上去就可以了,中間用空格隔開)這樣的命令來建立,如果要一次建立父子目錄(parent/child)可以透過mkdir -p parent/child/grandson來建立,如下:

[root@itheima local]# mkdir java
[root@itheima local]# ll
總用量 0
drwxr-xr-x. 2 root root  6 4月  11 2018 bin
drwxr-xr-x. 2 root root  6 4月  11 2018 etc
drwxr-xr-x. 2 root root  6 4月  11 2018 games
drwxr-xr-x. 2 root root  6 4月  11 2018 include
drwxr-xr-x. 2 root root  6 11月  8 19:01 java
drwxr-xr-x. 2 root root  6 4月  11 2018 lib
drwxr-xr-x. 2 root root  6 4月  11 2018 lib64
drwxr-xr-x. 2 root root  6 4月  11 2018 libexec
drwxr-xr-x. 2 root root  6 4月  11 2018 sbin
drwxr-xr-x. 5 root root 49 11月  2 00:50 share
drwxr-xr-x. 2 root root  6 4月  11 2018 src

5、使用SSH連結工具SecureCRT連結Linux系統,開啟SFTP會話
  將下載好的jdk安裝包jdk-8u191-linux-x64.tar.gz上傳至Linux系統的/usr/local/java目錄下

sftp> pwd
/root
sftp> cd /usr/local/java/
sftp> pwd
/usr/local/java
sftp> put -r "C:UsersBruceDesktopjdk-8u191-linux-x64.tar.gz"
Uploading jdk-8u191-linux-x64.tar.gz to /usr/local/java/jdk-8u191-linux-x64.tar.gz
  100% 187259KB  46814KB/s 00:00:04     
C:UsersBruceDesktopjdk-8u191-linux-x64.tar.gz: 191753373 bytes transferred in 4 seconds (46814 KB/s)
sftp> put -r "C:UsersBruceDesktopjdk-8u191-linux-x64.tar.gz"
Uploading jdk-8u191-linux-x64.tar.gz to /usr/local/java/jdk-8u191-linux-x64.tar.gz
  100% 187259KB  62419KB/s 00:00:03     
C:UsersBruceDesktopjdk-8u191-linux-x64.tar.gz: 191753373 bytes transferred in 3 seconds (62419 KB/s)
sftp> 

  傳輸完成之後ll命令檢視

[root@itheima java]# ll
總用量 187260
-rw-r--r--. 1 root root 191753373 11月  8 17:07 jdk-8u191-linux-x64.tar.gz
[root@itheima java]# 

6、解壓jdk-8u191-linux-x64.tar.gz安裝包

[root@itheima java]# tar -zxvf jdk-8u191-linux-x64.tar.gz

  解壓過後出現如下:

......
......
jdk1.8.0_191/jre/lib/fontconfig.SuSE.10.properties.src
jdk1.8.0_191/jre/lib/fontconfig.SuSE.11.bfc
jdk1.8.0_191/jre/COPYRIGHT
jdk1.8.0_191/jre/THIRDPARTYLICENSEREADME-JAVAFX.txt
jdk1.8.0_191/jre/Welcome.html
jdk1.8.0_191/jre/README
jdk1.8.0_191/README.html
[root@itheima java]# ll
總用量 187260
drwxr-xr-x. 7   10  143       245 10月  6 20:55 jdk1.8.0_191
-rw-r--r--. 1 root root 191753373 11月  8 17:07 jdk-8u191-linux-x64.tar.gz

  這時安裝包已經沒用了,我一般都會刪掉安裝包,透過rm -f jdk-8u191-linux-x64.tar.gz刪除安裝包。
  這裡-f的意思就是不詢問刪除,如果你不加-f在刪除時它會詢問你一下是否要刪除該安裝包,是確定要刪除就加-f
  如果你要刪除一個目錄,而這個目錄下還有目錄或者有檔案,比如在parent/child/grandson,這樣的目錄下你要刪除 parent 下得所有目錄和檔案(包括parent)就可以用到rm -rf parent命令就可以刪除掉了。rm -rf parent表示遞迴刪除不詢問。

[root@itheima java]# rm -rf jdk-8u191-linux-x64.tar.gz 
[root@itheima java]# ll
總用量 0
drwxr-xr-x. 7 10 143 245 10月  6 20:55 jdk1.8.0_191
[root@itheima java]# 

7、設定環境變數
  透過vim /etc/profile命令開啟 profile 檔案盤配置環境變數

[root@itheima java]# vim /etc/profile

  開啟之後按i進入insert(插入)模式,在檔案末尾新增上環境變數,內容如下:

JAVA_HOME=/usr/local/java/jdk1.8.0_191
JRE_HOME=/usr/local/java/jdk1.8.0_191/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH

  新增完之後儲存並退出,儲存並退出的命令有兩種 第一種是:按住shift鍵然後連按兩次z(這是我常用的,因為它方便快速),第二種是:wq命令,有一種是不儲存退出的命令:q! 注意:以上三種命令都是在非插入模式(插入模式下按鍵盤左上角的Esc鍵退出插入模式就是非插入模式了)下操作。

8、儲存完之後輸入:source /etc/profile 命令使剛才配置的環境變數生效

[root@itheima java]# source /etc/profile
[root@itheima java]# 

9、測試jdk是否安裝成功
  輸入javac命令如果出現以下的文字就說明編譯成功了(如果你之前安裝centos7時使用的語言是英文,那出現的就是類似這樣排版的英文)

[root@itheima java]# javac
用法: javac <options> <source files>
其中, 可能的選項包括:
  -g                         生成所有除錯資訊
  -g:none                    不生成任何除錯資訊
  -g:{lines,vars,source}     只生成某些除錯資訊
  -nowarn                    不生成任何警告
  -verbose                   輸出有關編譯器正在執行的操作的訊息
  -deprecation               輸出使用已過時的 API 的源位置
  -classpath <路徑>            指定查詢使用者類檔案和註釋處理程式的位置
  -cp <路徑>                   指定查詢使用者類檔案和註釋處理程式的位置
  -sourcepath <路徑>           指定查詢輸入原始檔的位置
  -bootclasspath <路徑>        覆蓋引導類檔案的位置
  -extdirs <目錄>              覆蓋所安裝擴充套件的位置
  -endorseddirs <目錄>         覆蓋簽名的標準路徑的位置
  -proc:{none,only}          控制是否執行註釋處理和/或編譯。
  -processor <class1>[,<class2>,<class3>...] 要執行的註釋處理程式的名稱; 繞過預設的搜尋程式
  -processorpath <路徑>        指定查詢註釋處理程式的位置
  -parameters                生成後設資料以用於方法引數的反射
  -d <目錄>                    指定放置生成的類檔案的位置
  -s <目錄>                    指定放置生成的原始檔的位置
  -h <目錄>                    指定放置生成的本機標標頭檔案的位置
  -implicit:{none,class}     指定是否為隱式引用檔案生成類檔案
  -encoding <編碼>             指定原始檔使用的字元編碼
  -source <發行版>              提供與指定發行版的源相容性
  -target <發行版>              生成特定 VM 版本的類檔案
  -profile <配置檔案>            請確保使用的 API 在指定的配置檔案中可用
  -version                   版本資訊
  -help                      輸出標準選項的提要
  -A關鍵字[=值]                  傳遞給註釋處理程式的選項
  -X                         輸出非標準選項的提要
  -J<標記>                     直接將 <標記> 傳遞給執行時系統
  -Werror                    出現警告時終止編譯
  @<檔名>                     從檔案讀取選項和檔名

[root@itheima java]# 

  或者輸入java -version

[root@itheima java]# java -version
java version "1.8.0_191"
Java(TM) SE Runtime Environment (build 1.8.0_191-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
[root@itheima java]# 

  如果出現以上資訊就說明你自己的jdk就完全安裝成功了!!!

參考連結:
  https://blog.csdn.net/hui_2016/article/details/69941850
  https://www.cnblogs.com/Dylansuns/p/6974272.html

原文出處:https://www.cnblogs.com/chenmingjun/p/9931593.html 

作者:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1747/viewspace-2816763/,如需轉載,請註明出處,否則將追究法律責任。

相關文章