1. 程式人生 > 其它 >Linux(centOS)下安裝JDK1.8(2021/06最新版)

Linux(centOS)下安裝JDK1.8(2021/06最新版)

一.安裝環境

作業系統:CentOS 7

JDK版本:1.8

工具:SecureCRT

二.安裝步驟

step1:下載JDK 1.8安裝包

登入oracle官網https://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html

oracle官網改版後,獲取下載連結的方式有所改變,按照以上步驟獲取到初步的地址後,需要進行一下修改,獲取到的地址如下:

https://www.oracle.com/webapps/redirect/signon?nexturl=https://download.oracle.com/otn/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz

我們只需要藍色的這部分地址,並將其中標紅的部分otn替換為otn-pub

https://download.oracle.com/otn/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz

這個位置如果使用otn作為拼接wget地址的話,下載到的檔案大小隻有5M左右,是個破損檔案,是解壓不了的

替換後為:

https://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz

然後拼接到wget命令後面,最終的下載地址為:

wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie"   https://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz

在usr/local下新建一個jdk1.8目錄,並下載壓縮包:

[root@192 /]# cd usr/local/
[root@192 local]# mkdir jdk1.8
[root@192 local]# cd jdk1.8/
[root@192 jdk1.8]# wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz"

step2:解壓

[root@192 jdk1.8]# tar -zxvf jdk-8u141-linux-x64.tar.gz

step3:配置環境變數

1.編輯 profile 檔案

[root@192 jdk1.8]# vi /etc/profile
按i進入編輯狀態,在尾部新增如下命令
# Sun JDK profile
export JAVA_HOME
=/usr/local/jdk1.8/jdk1.8.0_141 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH

2.新增完成後按esc退出編輯,:wq儲存退出(esc進入一般模式,:wq儲存退出)

3.執行命令使/etc/profile檔案生效

source /etc/profile

4.命令測試

  4.1 使用 java -version 和 javac -version 命令檢視jdk版本及其相關資訊,不會出現command not found錯誤,且顯示的版本資訊與前面安裝的一致。

  4.2 echo $JAVA_HOME, echo $CLASSPATH, echo $PATH,看看自己的配置是否都正確。

三.可能出現的問題

  錯誤一:

    每次重啟時,若jdk版本不正確,或者使用java -version顯示不是所需版本,使用javac -version會出現command not found錯誤,解決方法是再次執行source /etc/profile,使/etc/profile檔案生效。顯然每次這麼操作很麻煩,因此我們編輯vi ~/.bashrc,在最後面加一句source/etc/profile

  

  錯誤二:

    下載的壓縮檔案解壓的時候出現如下錯誤:  

[root@192 jdk1.8]$ tar -zxvfjdk-8u141-linux-x64.tar.gz
gzip: stdin: not in gzip format 
tar: Child returned status 1
tar: Error is not recoverable: exiting now

  出現以上問題,大概率是下載的壓縮包有損壞,首先檢視下載的檔案大小:

    命令:ls -lht檢視檔案大小

    如果檔案只有幾十K或者幾M,可以確定是檔案損壞,重新下載完整的壓縮包就可以了,正常大小是170M左右

  其次在考慮是以下處理方式:

  解決方法一:原因是這個壓縮包沒有用gzip格式壓縮,所以不用加z指令

[root@192 jdk1.8]$ tar -xvf jdk-8u141-linux-x64.tar.gz

  解決方法二:

  把下載下來的檔案重新命名,再執行解壓命令

[root@192 jdk1.8]$ mv jdk-8u141-linux-x64.tar.gz jdk-8u141-linux-x64.tar
[root@192 jdk1.8]$ tar -zxvf jdk-8u141-linux-x64.tar