Java 又雙叒叕發(fā)布新版本,這么多版本如何靈活管理?

前言

不知不覺 JDK13 發(fā)布已有兩個月厦滤,不知道各位有沒有下載學(xué)習(xí)體驗一番援岩?每次下載安裝之后,需要重新配置一下 Java 環(huán)境變量掏导。等到運(yùn)行平時的項目又需要切回之前 JDK 版本享怀,這又需要重新環(huán)境變量。這么重復(fù)配置顯然非常低效趟咆,又不能靈活切換版本添瓷。

所幸通過萬能 Google 找到解決方案,使用?jenv?管理 JDK 版本值纱。

jenv 介紹

熟悉 Ruby 的同學(xué)鳞贷,應(yīng)該會覺得比較眼熟,jenv 就是 Java 平臺的 rbenv 工具虐唠。

jenv 是一個命令行工具搀愧,可以在 Linux/OS X 平臺使用,可以管理多個版本 JDK凿滤,方便在多個版本 JDK 之間切換妈橄,另外其還可以設(shè)置 JAVA_HOME 環(huán)境變量。

Windows 真的傷不起

使用 jenv 有一個前提翁脆,必須提前安裝 JDK眷蚓,其不提供下載安裝 JDK 的功能。MacOSX 平臺可以提前使用 brew 安裝 JDK反番。

jenv 安裝

手動安裝

首先下載 jenv 源程序

gitclonehttps://github.com/jenv/jenv.git ~/.jenv

然后再將 jenv 命令路徑放入 Shell 配置文件中沙热。

若使用 Shell 為 bash:

echo'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profileecho'eval"$(jenv init -)"' >> ~/.bash_profilesource ~/.bash_profile

若使用 Shell 為 zsh

echo'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrcecho'eval"$(jenv init -)"' >> ~/.zshrcsource ~/.zshrc

自動安裝

若使用 MacOSX,可以直接使用 brew安裝:

brew install jenv

jenv 校驗

安裝 jenv 之后罢缸,可以運(yùn)行 jenv doctor檢查是否正確安裝篙贸。以下為我本機(jī) MacOSX 輸出:

剛安裝小伙伴運(yùn)行 jenv doctor ,可以觀察到輸出:

[ERROR]Javabinaryinpathisnotinthe jenv shims.

這代表還未正確添加 JDK枫疆,需要運(yùn)行下面指令添加 JDK爵川。

jenv 配置

JDK 配置

運(yùn)行 jenv add jdk_path,將 JDK 交給 jenv 管理。

可能有些小伙伴并不知道 JDK 安裝路徑息楔,若是 MacOSX寝贡,JDK 是通過 Oracle 提供安裝包或者通過 brew 安裝,可以通過運(yùn)行 /usr/libexec/java_home -V查找 JDK 路徑值依。

若不是通過以上方式圃泡,或者為 Linux 平臺,可以先通過 which java 或者 whereis java 找出命令路徑愿险。然后通過使用 ls -l 查看命名的實際路徑颇蜡。

JAVA_HOME 配置

有些應(yīng)用程序?qū)x取系統(tǒng) ${JAVA_HOME} 環(huán)境變量,通過安裝 jenv 插件,切換 JDK 版本時风秤,將會同步設(shè)置 ${JAVA_HOME} 變量鳖目。

jenvenable-pluginexport## 運(yùn)行這個才會生效exec$SHELL-l

jenv 使用教程

jenv versions

查看當(dāng)前系統(tǒng) jenv 管理所有 JDK 版本。

jenv versions

jenv local

通過上面命令唁情,我們知道當(dāng)前系統(tǒng)所有 JDK 版本之后疑苔,通過下面命令切換 JDK 版本。

JDK 版本切換 JDK1.7

jenvlocal1.7

這里需要注意的甸鸟,jenv local 切換 JDK 版本只對當(dāng)前文件夾有效,如果切換到其他文件夾,將會切換會當(dāng)前默認(rèn) JDK 版本兵迅。

jenv shell

使用 jenv shell 使切換的 JDK 版本對整個 Shell session 有效抢韭。重啟 Shell 終端或重新打開新的 Shell 終端,該配置失效恍箭。

jenvshell 9.0

jenv global

jenv global 將會設(shè)置一個全局默認(rèn)的 JDK 版本刻恭,即使重啟 Shell 窗口,該配置也不會改變扯夭。

jenvglobal9.0

jenv 小問題

上面幾個是 jenv 經(jīng)常使用的指令鳍贾,若想了解 jenv 其他指令,可以通過 jenv commands 查找其他指令交洗。

使用 jenv 過程可能會發(fā)現(xiàn)骑科,當(dāng)切換 JDK 版本之后, ${JAVA_HOME} 環(huán)境變量沒有改變构拳,還是上一個 JDK 版本配置咆爽。

這時可以運(yùn)行 exec $SHELL -l , ${JAVA_HOME} 將會變成當(dāng)前版本路徑置森。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末斗埂,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子凫海,更是在濱河造成了極大的恐慌呛凶,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,402評論 6 499
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件行贪,死亡現(xiàn)場離奇詭異漾稀,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)瓮顽,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,377評論 3 392
  • 文/潘曉璐 我一進(jìn)店門县好,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人暖混,你說我怎么就攤上這事缕贡。” “怎么了?”我有些...
    開封第一講書人閱讀 162,483評論 0 353
  • 文/不壞的土叔 我叫張陵晾咪,是天一觀的道長收擦。 經(jīng)常有香客問我,道長谍倦,這世上最難降的妖魔是什么塞赂? 我笑而不...
    開封第一講書人閱讀 58,165評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮昼蛀,結(jié)果婚禮上宴猾,老公的妹妹穿的比我還像新娘。我一直安慰自己叼旋,他們只是感情好仇哆,可當(dāng)我...
    茶點故事閱讀 67,176評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著夫植,像睡著了一般讹剔。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上详民,一...
    開封第一講書人閱讀 51,146評論 1 297
  • 那天延欠,我揣著相機(jī)與錄音,去河邊找鬼沈跨。 笑死由捎,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的谒出。 我是一名探鬼主播隅俘,決...
    沈念sama閱讀 40,032評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼笤喳!你這毒婦竟也來了为居?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,896評論 0 274
  • 序言:老撾萬榮一對情侶失蹤杀狡,失蹤者是張志新(化名)和其女友劉穎蒙畴,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體呜象,經(jīng)...
    沈念sama閱讀 45,311評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡膳凝,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,536評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了恭陡。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片蹬音。...
    茶點故事閱讀 39,696評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖休玩,靈堂內(nèi)的尸體忽然破棺而出著淆,到底是詐尸還是另有隱情劫狠,我是刑警寧澤,帶...
    沈念sama閱讀 35,413評論 5 343
  • 正文 年R本政府宣布永部,位于F島的核電站独泞,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏苔埋。R本人自食惡果不足惜懦砂,卻給世界環(huán)境...
    茶點故事閱讀 41,008評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望组橄。 院中可真熱鬧荞膘,春花似錦、人聲如沸晨炕。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽瓮栗。三九已至,卻和暖如春瞄勾,著一層夾襖步出監(jiān)牢的瞬間费奸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,815評論 1 269
  • 我被黑心中介騙來泰國打工进陡, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留愿阐,地道東北人。 一個月前我還...
    沈念sama閱讀 47,698評論 2 368
  • 正文 我出身青樓趾疚,卻偏偏與公主長得像缨历,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子糙麦,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,592評論 2 353

推薦閱讀更多精彩內(nèi)容