Ubuntu安裝OracleJava8

網(wǎng)上的文章一般都這樣寫:

    sudo add-apt-repository ppa:webupd8team/java    
    sudo apt-get update    
    sudo apt-get install oracle-java8-installer   
    sudo apt-get install oracle-java8-set-default

但是,在我的系統(tǒng)上會提示:
...
download failed
Oracle JDK 8 is NOT installed.
...
跟蹤日志分析了一下,原來是Oracle已經(jīng)出了新版本(寫這個文章的時候是u161了),然而這個oracle-java8-installer里配置的還是舊版本(u151)
需要手工替換一下

cd /var/lib/dpkg/info
sudo sed -i 's|JAVA_VERSION=8u151|JAVA_VERSION=8u161|' oracle-java8-installer.*
sudo sed -i 's|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf|PARTNER_URL=http://download.oracle.com/otn-pub/java/jdk/8u161-b12/2f38c3b165be4555a1fa6e98c45e0808|' oracle-java8-installer.*
sudo sed -i 's|SHA256SUM_TGZ="c78200ce409367b296ec39be4427f020e2c585470c4eed01021feada576f027f"|SHA256SUM_TGZ="6dbc56a0e3310b69e91bb64db63a485bd7b6a8083f08e48047276380a0e2021e"|' oracle-java8-installer.*
sudo sed -i 's|J_DIR=jdk1.8.0_151|J_DIR=jdk1.8.0_161|' oracle-java8-installer.*

解析一下:

  1. 去到/var/lib/dpkg/info目錄
  2. 把版本號替換到Oracle提供下載的版本
  3. 把下載的URL替換成Oracle提供下載的版本,注意,只是替換路徑,最終的文件名是這個腳本自動計算的。
  4. 替換checksum,可以在Oracle的網(wǎng)站上得到這個checksum。腳本里有很多不同版本的checksum(不同的CPU架構(gòu)和系統(tǒng)架構(gòu)),你不嫌麻煩可以一個一個替換,我就只替換我自己實際用到的那個就完事了。

PS:為了編譯Android源代碼,又玩起了Linux,感覺又有了不斷自己分析問題,解決問題的樂趣了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容