佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > 在Linux環(huán)境下采用壓縮包方式安裝JDK 13的方法

在Linux環(huán)境下采用壓縮包方式安裝JDK 13的方法

熱門(mén)標(biāo)簽:百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 檢查注冊(cè)表項(xiàng) 使用U盤(pán)裝系統(tǒng) 智能手機(jī) 網(wǎng)站建設(shè) 阿里云 硅谷的囚徒呼叫中心 美圖手機(jī)

什么是JDK?

好吧如果你不知道這個(gè)問(wèn)題的話我實(shí)在是不知道你為什么要裝這個(gè)東西。

JDK(Java Development Kit)是Sun公司(后被Oracle收購(gòu))推出的面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言的開(kāi)發(fā)工具包,擁有這個(gè)工具包之后我們就可以使用Java語(yǔ)言進(jìn)行程序設(shè)計(jì)和開(kāi)發(fā)。

而今天我們要在Linux環(huán)境 下對(duì)這個(gè)東西進(jìn)行部署以便能夠進(jìn)行開(kāi)發(fā),并且是以壓縮包解壓的方式進(jìn)行安裝,之所以不用rpm方式安裝主要是為了能夠在所有Linux系統(tǒng)上都通用,rpm和deb最多只能在Red Hat和Debian旗下的Linux系統(tǒng)上分別安裝,而且還會(huì)有互相轉(zhuǎn)換的問(wèn)題,但是用壓縮包就沒(méi)有這個(gè)問(wèn)題了,盡管相對(duì)要繁瑣一些。

操作系統(tǒng):CentOS Linux Release 8.0.1905 (Core)

環(huán)境:Virtual Box 虛擬機(jī)

那我只想讓Java的程序能夠在我這上運(yùn)行呢??

如果你實(shí)在懶得找或者找不到JRE的安裝教程的話,那你權(quán)且也可以跟著這個(gè)流程一起走下來(lái),保證你的Java程序確實(shí)能夠運(yùn)行,只是你的Linux操作系統(tǒng)上會(huì)多出來(lái)很多你實(shí)際上完全不需要的東西。

如果我想安裝其他的版本呢??

JDK 8及以下的版本可能與此有所區(qū)別,請(qǐng)參考其他專(zhuān)門(mén)安裝JDK 8的安裝過(guò)程。
JDK 10以上應(yīng)該可這個(gè)過(guò)程大體沒(méi)有太多區(qū)別,不過(guò)參考的時(shí)候請(qǐng)務(wù)必注意有些位置需要換成你當(dāng)前的版本代號(hào)。

你為什么要在Linux上安裝呢??你不是更喜歡在Windows平臺(tái)拿Eclipse做Java開(kāi)發(fā)嗎??
你的問(wèn)題還真是多啊,你說(shuō)得對(duì),但是在特別需求的情形下,我不得不采取一些“我不喜歡”的行為。
而這個(gè)就是一個(gè),因?yàn)槲倚枰贚inux平臺(tái)下部署Hadoop,而新安裝的CentOS里面根本沒(méi)有Java的環(huán)境:

[user@localhost /]$ java -version

bash: java: 未找到命令...

而Java SE是Hadoop的一個(gè)先決條件

而且如果部署好了的話我也可以用Linux做Java開(kāi)發(fā)了豈不美哉??

但是看起來(lái)網(wǎng)上的同類(lèi)的教程非常多啊

我什么時(shí)候說(shuō)過(guò)這是一篇教程了??這只是作為我的一次過(guò)程記錄而已,如果可能的話我也希望它能夠成為其他人的參考,而且我也參考了很多人的安裝過(guò)程,最終我成功了。

站在了無(wú)數(shù)巨人的肩膀上。

好了不多說(shuō)了,那就開(kāi)始吧。

嗯,確實(shí)如此。首先需要安裝一個(gè)Linux的系統(tǒng),沒(méi)必要是CentOS,也可以是Ubuntu、Fedora 、Debian什么的隨你喜歡,用不用GUI也無(wú)所謂,因?yàn)榧词刮野惭b了一個(gè)帶有GUI的CentOS,我的安裝過(guò)程實(shí)際上是用bash指令完成的。
在實(shí)際進(jìn)行安裝之前,我必須提前說(shuō)明:

和Windows不一樣,Linux系統(tǒng)是對(duì)大小寫(xiě)敏感的,也就是說(shuō)/Somewhere/a.zip和/somewhere/A.zip并不在同一目錄下,也不是同一個(gè)文件名,這點(diǎn)請(qǐng)務(wù)必注意?。。?br /> 下文中出現(xiàn)的所有shell指令的真正內(nèi)容都是從$之后開(kāi)始的。

至于你是實(shí)體機(jī)還是虛擬機(jī)這個(gè)區(qū)別應(yīng)該不大,你可以實(shí)際拿個(gè)U盤(pán)去裝也可以下個(gè)VMWare或者Virtual Box什么的。這里我不做說(shuō)明。

下載JDK壓縮包

總之,CentOS 8我安裝好了,當(dāng)然你可能用的是Ubuntu 16.04什么的這個(gè)就隨便了,接下來(lái)要從網(wǎng)絡(luò)上下載一個(gè)JDK13的壓縮包(jdk-13_linux-x64_bin.tar.gz)

這里假設(shè)你無(wú)論是GUI下載還是wget下載方式,你都已經(jīng)把壓縮包下載至/usr/download目錄下了

如果你的Linux系統(tǒng)有GUI并且系統(tǒng)預(yù)裝了Firefox,那么你可以像在Windows里一樣拿Firefox火速?zèng)_到JDK的下載地址,像這樣:

如果沒(méi)有GUI的話,你可以用wget指令:

[user@localhost /usr/lib/jvm/jdk-13]$ su root # 整個(gè)過(guò)程需要提升為root權(quán)限進(jìn)行,因?yàn)槠胀ㄓ脩舨豢梢栽趗sr、etc文件夾及它們的子文件夾下進(jìn)行修改

[root@localhost /]$ mkdir /usr/download # 如果你沒(méi)有這個(gè)目錄的話就先鍵入這個(gè)指令,否則直接看下一句
[root@localhost /]$ cd /usr/download
[root@localhost /usr/download]$ 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/13+33/5b8a42f3905b406298b72d750b6919f6/jdk-13_linux-x64_bin.tar.gz

注意:因?yàn)镺racle官網(wǎng)要求必須登錄Oracle賬號(hào)才能下載JDK等內(nèi)容,所以直接鍵入

wget https://download.oracle.com/otn-pub/java/jdk/13+33/5b8a42f3905b406298b72d750b6919f6/jdk-13_linux-x64_bin.tar.gz

下載出來(lái)的jdk-13_linux-x64_bin.tar.gz只有5KB(實(shí)際上應(yīng)當(dāng)是180MB),那個(gè)東西根本就不是壓縮包而是一個(gè)請(qǐng)求頁(yè)面而已。所以如果通過(guò)命令行的方式下載只能通過(guò)上面的方式進(jìn)行下載

下載好了之后查看一下jdk-13_linux-x64_bin.tar.gz的屬性:

[root@localhost /]$ ls -al jdk-13_linux-x64_bin.tar.gz
-rw-rw-r--. 1 user user 188711447 9月 19 11:13 jdk-13_linux-x64_bin.tar.gz

在一些Linux操作系統(tǒng)下,此時(shí)文件名的位置被顯示為紅色,意思是說(shuō):

這是一個(gè)壓縮文件

所以不必?fù)?dān)心,這不是錯(cuò)誤,你可以繼續(xù)進(jìn)行。

如果你發(fā)現(xiàn)188711447(約180MB)被5307(約5KB)(也就是說(shuō)文件大小嚴(yán)重不一致)替代了意味著你的下載鏈接是錯(cuò)誤的,請(qǐng)?jiān)敿?xì)閱讀上文“注意”里面的內(nèi)容然后用rm jdk-13_linux-x64_bin.tar.gz刪掉這個(gè)文件并重新下載,如果大小不一致但是差不多大有可能是你下載了其他的版本,也有可能是壓縮包損壞了,如果是后者請(qǐng)重新下載。

解壓JDK安裝包中的文件

接下來(lái)使用tar指令解壓壓縮包,解壓至/usr/lib/jvm目錄下:

[root@localhost /usr/download]$ mkdir /usr/lib/jvm
[root@localhost /usr/download]$ tar -xf jdk-13_linux-x64_bin.tar.gz -C /usr/lib/jvm #-- 這一步請(qǐng)耐心等待一會(huì),需要一段時(shí)間
[root@localhost /usr/download]$ cd /usr/lib/jvm
[root@localhost /usr/lib/jvm]$ ls
jdk-13

你會(huì)看到在/usr/lib/jvm下存在一個(gè)叫做jdk-13的文件夾,我們進(jìn)去看看

[root@localhost /usr/lib/jvm]$ cd jdk-13
[root@localhost /usr/lib/jvm/jdk-13]$ ls
bin conf include jmods legal lib man release

至此,JDK的所有組件都已經(jīng)備齊了,接下來(lái)要進(jìn)行配置。

添加環(huán)境變量

注意:這里要求使用VIM

如果你會(huì)使用VIM

啊,那沒(méi)問(wèn)題,繼續(xù)吧
如果你不會(huì)使用VIM
如果你使用的Linux系統(tǒng)帶有GUI界面
你可以使用預(yù)裝的文本編輯器進(jìn)行編輯,就像在Windows里面使用記事本那樣。
否則
如果你想了解VIM
找其他人的教程看看VIM的基本操作方法
否則,如果你有值得信賴(lài)且能力夠強(qiáng)的朋友的話
找他幫你弄弄
否則
emmm……我在此由衷地替您感到悲哀
在Windows下使用安裝程序安裝的時(shí)候一般來(lái)說(shuō)環(huán)境變量是被自動(dòng)配置好的,但是很可惜我們現(xiàn)在是手動(dòng)安裝,JDK的工作依賴(lài)于大量的環(huán)境變量中的路徑。

好像Oracle系的軟件都是這副死亞子,比如Oracle DB……

JDK需要這樣幾個(gè)環(huán)境變量:

JAVA_HOME :Java的主目錄,你把壓縮包包解壓之后得到的jdk-13文件夾所在的位置(并且包含jdk-13自身)
JRE_HOME:JRE的主目錄,JRE是運(yùn)行Java應(yīng)用程序的最基本軟件環(huán)境,所以如果你只是希望Java的程序能夠運(yùn)行的的話你完全不需要安裝JDK,盡管JDK里面帶有JRE。
CLASSPATH:Java提供的標(biāo)準(zhǔn)或公共類(lèi)庫(kù)的位置
PATH:這是系統(tǒng)的環(huán)境變量,這個(gè)東西只是告知系統(tǒng)你的Java開(kāi)發(fā)環(huán)境被安裝在了什么位置,這個(gè)東西使你在任意目錄下都可以直接執(zhí)行Java的開(kāi)發(fā)工具比如javac等,直接鍵入javac就可以執(zhí)行而不需要再重新鍵入/usr/lib/jvm/jdk-13/bin/javac。

Linux系統(tǒng)下的環(huán)境變量被存儲(chǔ)于若干個(gè)文件里,其作用范圍有所不同,有的只作用于當(dāng)前用戶,而有的作用于全體用戶。而我們這里的環(huán)境直接對(duì)全體用戶生效就可以了(因?yàn)槌藃oot就我一個(gè)用戶user),所以,這里我們會(huì)對(duì)/etc/profile進(jìn)行修改。

不過(guò)我們現(xiàn)在知道JAVA_HOME=/usr/lib/jvm/jdk-13,這個(gè)目錄意思是說(shuō)包含了所有和Java運(yùn)行環(huán)境相關(guān)的東西,我們看看里面都有什么

[user@localhost /usr/lib/jvm/jdk-13]$ ls
bin conf include jmods legal lib man release

其中bin是Java所有開(kāi)發(fā)工具(通常是可執(zhí)行的應(yīng)用程序)所在的目錄,而lib里面則是Java提供的公共類(lèi)庫(kù),當(dāng)然這個(gè)也就是我們?cè)谡业腃LASSPATH了。
那么,JRE_HOME怎么辦呢??
早在JDK 8的時(shí)候,安裝好的JAVA_HOME下能夠找到一個(gè)叫做jre的文件夾,但是到JDK 13的時(shí)候剛才也看了,哪里有jre呢??

其實(shí)不用考慮這個(gè)問(wèn)題,因?yàn)樾掳姹镜腏DK不僅附帶JRE,而且把JRE組件直接毀進(jìn)JDK了,所以JRE_HOME可以直接給成JAVA_HOME就可以了。

因此我們用VIM打開(kāi)/etc/profile(因?yàn)槭牵┻M(jìn)行編輯:

[root@localhost /usr/lib/jvm/jdk-13]$ vim /etc/profile

在這個(gè)文件開(kāi)頭加入如下內(nèi)容:

export JAVA_HOME=/usr/lib/jvm/jdk-13
export JRE_HOME=/${JAVA_HOME}
export CLASSPATH=.:${JAVA_HOME}/libss:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

然后:wq保存退出,不過(guò)因?yàn)橹皇菍?xiě)在了文件里,這些環(huán)境變量并沒(méi)有被實(shí)際的構(gòu)建到內(nèi)核中,因此需要手動(dòng)執(zhí)行一下這個(gè)文件。

[root@localhost /usr/lib/jvm/jdk-13]$ source /etc/profile
[root@localhost /usr/lib/jvm/jdk-13]$ exit #退出root權(quán)限


至此,安裝過(guò)程全部結(jié)束,JDK可以正常工作了,我們可以用下面這個(gè)指令檢驗(yàn)一下:

[user@localhost /usr/lib/jvm/jdk-13]$ java -version

現(xiàn)在我們可以在Linux系統(tǒng)上使用JDK13進(jìn)行開(kāi)發(fā)了。

既然裝好了,不妨我們?cè)囈幌掳桑?br /> 說(shuō)得對(duì)??!我們已經(jīng)摩拳擦掌了,那就編寫(xiě)一個(gè)Java程序測(cè)試一下吧!
隨便在某個(gè)位置建個(gè)文件夾編寫(xiě)一個(gè)Hello World試試看吧:

[user@localhost /usr/lib/jvm/jdk-13]$ mkdir ~/jsrc
[user@localhost /usr/lib/jvm/jdk-13]$ cd ~/jsrc
[user@localhost ~/jsrc]$ vim Hello.java
/// Hello.java

public class Hello
{
 public static void main(String args[])
 {
 System.out.println("Hello");
 }
}
[user@localhost ~/jsrc]$ javac Hello.java
[user@localhost ~/jsrc]$ ls
Hello.class Hello.java
[user@localhost ~/jsrc]$ java Hello
Hello

總結(jié)

以上所述是小編給大家介紹的在Linux環(huán)境下采用壓縮包方式安裝JDK 13的方法,希望對(duì)大家有所幫助!

標(biāo)簽:懷化 湖北 賀州 黃山 通遼 湘潭 煙臺(tái) 山南

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《在Linux環(huán)境下采用壓縮包方式安裝JDK 13的方法》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    平谷区| 临沧市| 鄂托克旗| 郧西县| 大石桥市| 忻州市| 府谷县| 辽阳县| 耿马| 苍溪县| 和林格尔县| 涿州市| 淅川县| 堆龙德庆县| 紫阳县| 手机| 城步| 肃南| 常熟市| 吉林省| 巴彦县| 扶绥县| 江安县| 江西省| 建湖县| 霍林郭勒市| 望奎县| 涿鹿县| 石门县| 尚志市| 韩城市| 绥化市| 岚皋县| 德庆县| 科技| 荣成市| 双鸭山市| 常宁市| 兴义市| 巴东县| 贵溪市|