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

MacOS如何安裝配置多個(gè)JDK并切換使用詳解

 更新時(shí)間:2025年02月24日 08:35:44   作者:程序員哈欠  
這篇文章主要介紹了如何在MacOS上安裝和配置多個(gè)JDK版本,通過(guò)配置環(huán)境變量來(lái)實(shí)現(xiàn),文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下

由于JDK版本極快的更新速度,因此常常會(huì)出現(xiàn)不同項(xiàng)目需要的JDK不同情況,所以需要明白如何在操作系統(tǒng)安裝配置多個(gè)JDK,本篇博客以MacOS舉例。

提示:如果是M系列芯片,推薦下載arm版本

概述

安裝配置多個(gè)JDK一共三步:

實(shí)現(xiàn)多個(gè)JDK的關(guān)鍵是如何配置環(huán)境變量,是本文的重點(diǎn),因此第一二步略過(guò)

配置環(huán)境變量

JDK下載與安裝的區(qū)別

下載 JDK:

  • 過(guò)程: 這涉及從 Oracle 官方網(wǎng)站、OpenJDK 社區(qū),或者其他提供商下載 JDK 的二進(jìn)制分發(fā)包。這通常是一個(gè) .dmg (Disk Image)、.tar.gz、或者像 .pkg 這樣的安裝包。
  • 本質(zhì): 下載只是將安裝文件從網(wǎng)絡(luò)傳輸?shù)侥愕谋镜赜?jì)算機(jī),這一步只是在你的硬盤上存儲(chǔ)了安裝文件,并未進(jìn)行任何系統(tǒng)級(jí)的修改。

安裝 JDK:

  • 過(guò)程: 這一步包括運(yùn)行實(shí)際下載的安裝程序或按照下載 README 的指示進(jìn)行解壓和配置。安裝過(guò)程通常會(huì)復(fù)制 JDK 文件到系統(tǒng)的特定目錄(例如 /Library/Java/JavaVirtualMachines),以及更新相關(guān)的系統(tǒng)環(huán)境配置。
  • 本質(zhì): 安裝步驟會(huì)把 JDK 添加到計(jì)算機(jī)的路徑中,使其成為全局可用。它通常會(huì)在系統(tǒng)中注冊(cè)這個(gè) JDK,使得 Java 命令(例如 javajavac)可以在終端中全局訪問(wèn)。

簡(jiǎn)而言之:下載只是壓縮包,安裝包括解壓與配置

了解配置項(xiàng)

先給大家看看配置項(xiàng)

#JAVA
JAVA_HOME_17=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
JAVA_HOME_8=/Library/Java/JavaVirtualMachines/jdk-1.8.jdk/Contents/Home

export JAVA_HOME=$JAVA_HOME_8

PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar

export PATH
export CLASSPATH

用編程的思維大致理解要做的事

  • 定義變量
  • 操作變量
  • return變量

JAVA_HOME_17 and JAVA_HOME_8

這些行分別定義了兩個(gè)環(huán)境變量 JAVA_HOME_17 和 JAVA_HOME_8,用于存儲(chǔ) Java 17 和 Java 8 安裝的路徑。

  • JAVA_HOME_17 設(shè)置為 Java 17 的路徑:/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home。
  • JAVA_HOME_8 設(shè)置為 Java 8 的路徑:/Library/Java/JavaVirtualMachines/jdk-1.8.jdk/Contents/Home。

export JAVA_HOME=$JAVA_HOME_8

這行命令將 JAVA_HOME 環(huán)境變量設(shè)置為 JAVA_HOME_8 的值,指定將使用 Java 8 作為默認(rèn)的 Java 環(huán)境。這里是切換JDK的重點(diǎn)

  • export 命令用于將環(huán)境變量暴露給終端中運(yùn)行的所有子進(jìn)程,確保在終端中運(yùn)行的 Java 程序使用這個(gè) JDK。

PATH=$JAVA_HOME/bin:$PATH

這行代碼重新設(shè)置了 PATH 環(huán)境變量的值。讓我們逐個(gè)部分地解釋:

  • PATH=

    • PATH 是一個(gè)環(huán)境變量,存儲(chǔ)了一系列目錄的路徑,系統(tǒng)會(huì)依次在這些目錄中查找可執(zhí)行文件。當(dāng)你在終端中輸入一個(gè)命令時(shí),shell 根據(jù)這些路徑來(lái)尋找并執(zhí)行對(duì)應(yīng)的程序。
    • = 用于給變量賦值。在這行代碼中,我們更新了 PATH 變量的值。
  • $JAVA_HOME/bin

    • $JAVA_HOME 是一個(gè)變量,存儲(chǔ)了當(dāng)前 Java 安裝目錄的路徑。在這段代碼中,它被設(shè)置為 JAVA_HOME_8,指向 Java 8 的安裝路徑。
    • /bin 是一個(gè)相對(duì)路徑,表示我們要訪問(wèn) JAVA_HOME 目錄下的 bin 子目錄,該目錄包含了所有與 Java 相關(guān)的可執(zhí)行文件,例如 java 和 javac。
    • 當(dāng) JAVA_HOME 被正確設(shè)置時(shí),$JAVA_HOME/bin 的實(shí)際值可能為 /Library/Java/JavaVirtualMachines/jdk-1.8.jdk/Contents/Home/bin。
  • :$PATH

    • : 是路徑分隔符。在 UNIX 和類 UNIX 系統(tǒng)中,環(huán)境變量 PATH 中的各個(gè)路徑是用冒號(hào)分隔的。
    • $PATH 表示當(dāng)前 PATH 變量的值。
    • :$PATH 表示我們要把當(dāng)前的 PATH 內(nèi)容追加到新的 PATH 變量值之后。

總結(jié)一下,這行代碼的作用是:

  • 將 Java 安裝目錄下的 bin 文件夾添加到 PATH 的開頭。這樣能確保運(yùn)行 java、javac 等命令時(shí),優(yōu)先使用當(dāng)前配置的 JDK。
  • 保留先前的 PATH 內(nèi)容,確保系統(tǒng)的其他命令仍然可以被正常調(diào)用。

CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar

CLASSPATH 用于定義 Java 在運(yùn)行時(shí)和編譯時(shí)搜索類文件的路徑。

  • tools.jar 和 dt.jar 是 JDK 中的庫(kù),tools.jar 包含用于編譯和運(yùn)行 Java 應(yīng)用程序的工具,而 dt.jar 通常和圖形界面構(gòu)建有關(guān)。

export PATH 和 export CLASSPATH

  • 類似于 export JAVA_HOME, 這些 export 命令將已設(shè)置的 PATH 和 CLASSPATH 環(huán)境變量對(duì)終端中運(yùn)行的所有子進(jìn)程可用。
  • 確保命令行程序和 Java 程序可以使用這些變量中配置的路徑和庫(kù)。

編寫配置項(xiàng)

1.在終端中,打開.zshrc文件

open .zshrc

2.將剛才的配置項(xiàng)粘貼到文件中

3.在終端中,使.zshrc文件生效

source ~/.zshrc

切換JDK

在終端中,查看一下我們的JDK版本

java -version

1.在終端中,打開.zshrc文件

open .zshrc

2.修改JAVA_HOME的值

export JAVA_HOME=$JAVA_HOME_17

3.在終端中,使.zshrc文件生效

source ~/.zshrc

再查看一次,發(fā)現(xiàn)已經(jīng)切換成功了

總結(jié) 

到此這篇關(guān)于MacOS如何安裝配置多個(gè)JDK并切換使用的文章就介紹到這了,更多相關(guān)MacOS安裝配置多個(gè)JDK切換使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 10本Java架構(gòu)師必讀書籍

    10本Java架構(gòu)師必讀書籍

    這篇文章主要介紹了10本Java架構(gòu)師必讀書籍,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • Spring解決泛型擦除的思路詳解

    Spring解決泛型擦除的思路詳解

    這篇文章主要介紹了Spring解決泛型擦除的思路,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2024-01-01
  • 淺析Java中對(duì)象的創(chuàng)建與對(duì)象的數(shù)據(jù)類型轉(zhuǎn)換

    淺析Java中對(duì)象的創(chuàng)建與對(duì)象的數(shù)據(jù)類型轉(zhuǎn)換

    這篇文章主要介紹了Java中對(duì)象的創(chuàng)建與對(duì)象的數(shù)據(jù)類型轉(zhuǎn)換,是Java入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2016-01-01
  • Java中CyclicBarrier?循環(huán)屏障

    Java中CyclicBarrier?循環(huán)屏障

    這篇文章主要介紹了Java中CyclicBarrier?循環(huán)屏障,可以實(shí)現(xiàn)讓一組線程等待至某個(gè)狀態(tài)屏障點(diǎn)之后再全部同時(shí)執(zhí)行,下面文章分享CyclicBarrier循環(huán)屏障的原理,需要的小伙伴可以參考一下
    2022-05-05
  • Java中實(shí)現(xiàn)Comparable和Comparator對(duì)象比較

    Java中實(shí)現(xiàn)Comparable和Comparator對(duì)象比較

    這篇文章主要針對(duì)Java中Comparable和Comparator對(duì)象進(jìn)行比較,感興趣的小伙伴們可以參考一下
    2016-02-02
  • Java異常處理全攻略之基礎(chǔ)原理+處理機(jī)制+信息解析+快速排查解決

    Java異常處理全攻略之基礎(chǔ)原理+處理機(jī)制+信息解析+快速排查解決

    Java異常處理是Java編程語(yǔ)言中的一個(gè)重要概念,它允許開發(fā)者捕獲和處理程序中的異常,從而確保程序的可靠性和穩(wěn)定性,這篇文章主要介紹了Java異常處理全攻略之基礎(chǔ)原理+處理機(jī)制+信息解析+快速排查解決的相關(guān)資料,需要的朋友可以參考下
    2026-04-04
  • java生成pdf表格,調(diào)用itext創(chuàng)建的實(shí)例

    java生成pdf表格,調(diào)用itext創(chuàng)建的實(shí)例

    這篇文章主要介紹了java生成pdf表格,調(diào)用itext創(chuàng)建的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2021-01-01
  • Java fastjson2 解析JSON用法詳解

    Java fastjson2 解析JSON用法詳解

    Fastjson2是Fastjson的升級(jí)版,提供了更好的性能和擴(kuò)展性,它支持多種方式解析JSON數(shù)據(jù),包括將JSON字符串轉(zhuǎn)換為Java對(duì)象、嵌套的JSON對(duì)象和數(shù)組,以及轉(zhuǎn)換成Map或List,本文介紹Java fastjson2 解析JSON用法,感興趣的朋友一起看看吧
    2025-02-02
  • 如何使用Java統(tǒng)計(jì)gitlab代碼行數(shù)

    如何使用Java統(tǒng)計(jì)gitlab代碼行數(shù)

    這篇文章主要介紹了如何使用Java統(tǒng)計(jì)gitlab代碼行數(shù),實(shí)現(xiàn)方式通過(guò)git腳本將所有的項(xiàng)目拉下來(lái)并然后通過(guò)進(jìn)行代碼行數(shù)的統(tǒng)計(jì),需要的朋友可以參考下
    2023-10-10
  • SpringBoot實(shí)現(xiàn)登錄注冊(cè)的三種基本方式

    SpringBoot實(shí)現(xiàn)登錄注冊(cè)的三種基本方式

    本文簡(jiǎn)要介紹了cookie、session、JWT三種方式實(shí)現(xiàn)登錄認(rèn)證,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2026-05-05

最新評(píng)論

滦南县| 彰化市| 诸暨市| 昌邑市| 潼关县| 于都县| 永清县| 静宁县| 枣庄市| 丹寨县| 沂水县| 喀喇| 安康市| 涿鹿县| 罗平县| 佳木斯市| 驻马店市| 吉木萨尔县| 临高县| 杭州市| 华阴市| 东丽区| 滁州市| 唐河县| 汽车| 临漳县| 抚远县| 白山市| 宝清县| 高青县| 萝北县| 汾阳市| 宁安市| 两当县| 和政县| 湖北省| 邢台县| 昆明市| 开封县| 东明县| 贺兰县|