最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

CentOS安裝配置多版本JDK詳細(xì)步驟記錄

 更新時間:2025年05月08日 10:07:33   作者:惡露發(fā)  
這篇文章主要給大家介紹了關(guān)于CentOS安裝配置多版本JDK的詳細(xì)步驟,分別是使用update-alternatives工具進(jìn)行全局切換和通過設(shè)置環(huán)境變量和alias進(jìn)行臨時切換,每種方法都提供了詳細(xì)步驟和示例代碼,需要的朋友可以參考下

1. 下載 JDK

你可以從 Oracle 官方網(wǎng)站或者 OpenJDK 的相關(guān)源下載不同版本的 JDK 安裝包。以 JDK 8 和 JDK 21 為例,假設(shè)你已經(jīng)將它們下載到了本地。

2. 安裝 JDK

創(chuàng)建一個用于存放 JDK 的目錄,然后將下載的 JDK 安裝包解壓到該目錄。

# 創(chuàng)建目錄
sudo mkdir -p /usr/local/java
# 解壓JDK 8
sudo tar -zxvf jdk-8u202-linux-x64.tar.gz -C /usr/local/java
# 解壓JDK 21
sudo tar -zxvf jdk-21_linux-x64_bin.tar.gz -C /usr/local/java

3. 配置環(huán)境變量

下面介紹兩種常用的方式,在 CentOS 10 系統(tǒng)上安裝并管理多個 JDK 版本,一種是使用 update‐alternatives 工具進(jìn)行全局切換,另一種則是通過設(shè)置環(huán)境變量和 alias 來臨時切換。下面提供詳細(xì)步驟:

方法一:使用 update-alternatives 全局管理

這種方式可以在系統(tǒng)級別統(tǒng)一設(shè)置默認(rèn)使用哪個 JDK。每個 JDK 都注冊一個優(yōu)先級,然后通過命令來切換默認(rèn)版本。

  • 注冊各個JDK
sudo update-alternatives --install /usr/bin/java java /usr/java/jdk1.8.0_xxx/bin/java 1
sudo update-alternatives --install /usr/bin/java java /usr/java/jdk-11.0_xxx/bin/java 2
sudo update-alternatives --install /usr/bin/java java /usr/java/jdk-17.0_xxx/bin/java 3

sudo update-alternatives --install /usr/bin/javac javac /usr/java/jdk1.8.0_xxx/bin/javac 1
sudo update-alternatives --install /usr/bin/javac javac /usr/java/jdk-11.0_xxx/bin/javac 2
sudo update-alternatives --install /usr/bin/javac javac /usr/java/jdk-17.0_xxx/bin/javac 3

其中“xxx”部分請?zhí)鎿Q為具體的版本號路徑。

  • 切換默認(rèn)JDK

    sudo update-alternatives --config java
    sudo update-alternatives --config javac
    

    系統(tǒng)會列出已注冊的各個版本,輸入對應(yīng)編號即可切換。

  • 驗(yàn)證版本

    執(zhí)行以下命令確認(rèn)當(dāng)前默認(rèn)版本:

    java -version
    javac -version
    

方法二:通過環(huán)境變量和 alias 切換(用戶級別)

這種方式適用于需要臨時切換 JDK 版本或者僅對當(dāng)前用戶生效的情況。

  • 編輯環(huán)境變量配置文件修改 /etc/profile(全局)或 ~/.bash_profile(當(dāng)前用戶)文件,追加如下內(nèi)容(示例中配置了三個 alias 命令):

    編輯完成后,記得保存退出(例如,在 vim 中按 Esc 后輸入 :wq 保存并退出;在 nano 中按 Ctrl+O 保存,然后 Ctrl+X 退出)。

    sudo vi /etc/profile
    sudo nano /etc/profile
    
    vim ~/.bash_profile
    nano ~/.bash_profile
    
    ## 默認(rèn)指向 JDK 8
    export JAVA_HOME=/usr/local/java/jdk1.8.0_202
    export PATH=$JAVA_HOME/bin:$PATH
    
    alias java8='export JAVA_HOME=/usr/local/java/jdk1.8.0_202 && export PATH=$JAVA_HOME/bin:$PATH && java -version'
    alias java21='export JAVA_HOME=/usr/local/java/jdk-21.0.6 && export PATH=$JAVA_HOME/bin:$PATH && java -version'
    ## alias java17='export JAVA_HOME=/usr/local/java/jdk-17.0_xxx && export PATH=$JAVA_HOME/bin:$PATH && java -version'
    

    保存文件后,讓配置生效:

    source /etc/profile   
    # 或者 
    source ~/.bash_profile
    
  • 切換 JDK 版本

    當(dāng)你需要切換到某個版本時,只需執(zhí)行相應(yīng) alias 命令,例如:

    java21
    
  • 驗(yàn)證切換效果運(yùn)行:

    java -version
    

    以確認(rèn)當(dāng)前正在使用所設(shè)置的 JDK。

  • 持久化配置:當(dāng)前的配置只在當(dāng)前終端會話中生效。若希望每次開啟終端都能使用這些配置,需要把它們添加到 shell 的配置文件中,像 ~/.bashrc(針對 Bash shell)或者 ~/.zshrc(針對 Zsh shell)。添加配置的命令示例如下:

    echo 'export JAVA_HOME=/usr/local/java/jdk1.8.0_202' >> ~/.bashrc
    echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
    echo 'alias java8='export JAVA_HOME=/usr/local/java/jdk1.8.0_202 && export PATH=$JAVA_HOME/bin:$PATH && java -version'' >> ~/.bashrc
    echo 'alias java21='export JAVA_HOME=/usr/local/java/jdk-21.0.6 && export PATH=$JAVA_HOME/bin:$PATH && java -version'' >> ~/.bashrc
    

    添加完成后,執(zhí)行以下命令讓配置生效:

    source ~/.bashrc
    
    • 錯誤處理缺失:當(dāng)前配置沒有對目錄不存在或者 JDK 版本不可用的情況進(jìn)行錯誤處理。你可以在 alias 命令里添加一些錯誤檢查邏輯,示例如下:
    alias java8='if [ -d "/usr/local/java/jdk1.8.0_202" ]; then export JAVA_HOME=/usr/local/java/jdk1.8.0_202 && export PATH=$JAVA_HOME/bin:$PATH && java -version; else echo "JDK 8 目錄不存在"; fi'
    alias java21='if [ -d "/usr/local/java/jdk-21.0.6" ]; then export JAVA_HOME=/usr
    
  • update-alternatives 方法適合系統(tǒng)級別的 JDK 管理,適用于需要在不同項(xiàng)目間統(tǒng)一切換默認(rèn) JDK 的場景。

  • 環(huán)境變量和 alias 方法適合用戶臨時切換,或者針對不同需求(如開發(fā)與測試)靈活設(shè)置。

總結(jié) 

到此這篇關(guān)于CentOS安裝配置多版本JDK的文章就介紹到這了,更多相關(guān)CentOS安裝配置多版本JDK內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java代理實(shí)現(xiàn)爬取代理IP的示例

    java代理實(shí)現(xiàn)爬取代理IP的示例

    今天小編就為大家分享一篇java代理實(shí)現(xiàn)爬取代理IP的示例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • Java 線程池全面總結(jié)與詳解

    Java 線程池全面總結(jié)與詳解

    在一個應(yīng)用程序中,我們需要多次使用線程,也就意味著,我們需要多次創(chuàng)建并銷毀線程。而創(chuàng)建并銷毀線程的過程勢必會消耗內(nèi)存。而在Java中,內(nèi)存資源是及其寶貴的,所以,我們就提出了線程池的概念
    2021-10-10
  • Java修改Integer變量值遇到的問題及解決

    Java修改Integer變量值遇到的問題及解決

    這篇文章主要介紹了Java修改Integer變量值遇到的問題及解決,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 詳解Spring基于xml的兩種依賴注入方式

    詳解Spring基于xml的兩種依賴注入方式

    這篇文章主要介紹了詳解Spring基于xml的兩種依賴注入方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 解決Mapper接口和mapper.xml的文件位置問題

    解決Mapper接口和mapper.xml的文件位置問題

    這篇文章主要介紹了解決Mapper接口和mapper.xml的文件位置問題,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-12-12
  • Spring?Batch實(shí)現(xiàn)批量處理

    Spring?Batch實(shí)現(xiàn)批量處理

    本文主要介紹了Spring?Batch進(jìn)行批量處理,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Springsession nginx反向代理集成過程

    Springsession nginx反向代理集成過程

    這篇文章主要介紹了Springsession nginx反向代理集成過程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • Java 實(shí)現(xiàn)貪吃蛇游戲的示例

    Java 實(shí)現(xiàn)貪吃蛇游戲的示例

    這篇文章主要介紹了Java 如何實(shí)現(xiàn)貪吃蛇游戲,幫助大家更好的理解和學(xué)習(xí)使用Java,感興趣的朋友可以了解下
    2021-03-03
  • SpringRetry重試機(jī)制之@Retryable注解與重試策略詳解

    SpringRetry重試機(jī)制之@Retryable注解與重試策略詳解

    本文將詳細(xì)介紹SpringRetry的重試機(jī)制,特別是@Retryable注解的使用及各種重試策略的配置,幫助開發(fā)者構(gòu)建更加健壯的應(yīng)用程序,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • Springboot JPA打印SQL語句及參數(shù)的實(shí)現(xiàn)

    Springboot JPA打印SQL語句及參數(shù)的實(shí)現(xiàn)

    在SpringBoot項(xiàng)目中調(diào)試和優(yōu)化數(shù)據(jù)庫操作是很常見的需求,本文主要介紹了Springboot JPA打印SQL語句及參數(shù)的實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-06-06

最新評論

万山特区| 沭阳县| 丽江市| 新化县| 库伦旗| 民权县| 策勒县| 开封市| 渝北区| 稷山县| 海伦市| 旌德县| 石首市| 东阿县| 建始县| 兰考县| 新余市| 荆门市| 广东省| 邓州市| 焦作市| 石城县| 铁岭市| 深州市| 玛沁县| 涟源市| 盱眙县| 盘锦市| 大理市| 昭通市| 澄城县| 滨州市| 宁河县| 海南省| 东港市| 大渡口区| 龙泉市| 邯郸县| 潮州市| 黄骅市| 凭祥市|