使用CentOS 7.5解除安裝自帶jdk安裝自己的JDK1.8
本文主要介紹的是如何是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位的,ofollow,noindex" target="_blank">jdk-8u191-linux-x64.tar.gz下載連結
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 root6 4月11 2018 bin drwxr-xr-x. 2 root root6 4月11 2018 etc drwxr-xr-x. 2 root root6 4月11 2018 games drwxr-xr-x. 2 root root6 4月11 2018 include drwxr-xr-x. 2 root root6 4月11 2018 lib drwxr-xr-x. 2 root root6 4月11 2018 lib64 drwxr-xr-x. 2 root root6 4月11 2018 libexec drwxr-xr-x. 2 root root6 4月11 2018 sbin drwxr-xr-x. 5 root root 49 11月2 00:50 share drwxr-xr-x. 2 root root6 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 root6 4月11 2018 bin drwxr-xr-x. 2 root root6 4月11 2018 etc drwxr-xr-x. 2 root root6 4月11 2018 games drwxr-xr-x. 2 root root6 4月11 2018 include drwxr-xr-x. 2 root root6 11月8 19:01 java drwxr-xr-x. 2 root root6 4月11 2018 lib drwxr-xr-x. 2 root root6 4月11 2018 lib64 drwxr-xr-x. 2 root root6 4月11 2018 libexec drwxr-xr-x. 2 root root6 4月11 2018 sbin drwxr-xr-x. 5 root root 49 11月2 00:50 share drwxr-xr-x. 2 root root6 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:\Users\Bruce\Desktop\jdk-8u191-linux-x64.tar.gz" Uploading jdk-8u191-linux-x64.tar.gz to /usr/local/java/jdk-8u191-linux-x64.tar.gz 100% 187259KB46814KB/s 00:00:04 C:\Users\Bruce\Desktop\jdk-8u191-linux-x64.tar.gz: 191753373 bytes transferred in 4 seconds (46814 KB/s) sftp> put -r "C:\Users\Bruce\Desktop\jdk-8u191-linux-x64.tar.gz" Uploading jdk-8u191-linux-x64.tar.gz to /usr/local/java/jdk-8u191-linux-x64.tar.gz 100% 187259KB62419KB/s 00:00:03 C:\Users\Bruce\Desktop\jdk-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. 710143245 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