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

macOS查看與安裝Java JDK的完整步驟

 更新時間:2026年03月09日 08:52:54   作者:獨隅  
本文詳細介紹了在macOS上查看、安裝、配置和管理Java JDK的步驟,包括使用官網下載、Homebrew、SDKMAN和IntelliJ IDEA內置JDK等方法,同時,還涵蓋了環(huán)境變量配置、多版本管理以及常見問題解決等,需要的朋友可以參考下

這是一份完整的 macOS Java JDK 管理指南,涵蓋查看、安裝、配置、多版本管理等所有內容。

一、查看 Java 版本

1.1 檢查是否已安裝 Java

# 查看 Java 運行時版本
java -version

可能輸出:

java version "17.0.8" 2023-07-18 LTS
Java(TM) SE Runtime Environment (build 17.0.8+9-LTS-211)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.8+9-LTS-211, mixed mode, sharing)
輸出情況含義
顯示版本號已安裝 Java
command not found未安裝 Java
No Java runtime present需要安裝

1.2 查看 Java 安裝路徑

# 查看當前 JAVA_HOME 路徑
echo $JAVA_HOME

# 查看系統(tǒng)默認 Java 路徑
/usr/libexec/java_home

1.3 查看已安裝的所有 Java 版本

# 列出所有已安裝的 JDK
/usr/libexec/java_home -V

輸出示例:

Matching Java Virtual Machines (2):
    17.0.8 (arm64) "Oracle Corporation" - "Java SE 17.0.8"
        /Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
    1.8.0_381 (arm64) "Oracle Corporation" - "Java SE 8"
        /Library/Java/JavaVirtualMachines/jdk1.8.jdk/Contents/Home

1.4 查看 Java 編譯器版本

# 查看 javac 版本
javac -version

# 查看 jar 工具版本
jar --version

二、理解 Java 版本命名

2.1 版本命名規(guī)則

舊命名新命名說明
Java 1.4Java 42004年之前
Java 5.0Java 52004年
Java 6Java 62006年
Java 7Java 72011年
Java 1.8Java 82014年(最常用)
Java 9Java 92017年
Java 10Java 102018年
Java 11Java 112018年(LTS)
Java 17Java 172021年(LTS)
Java 21Java 212023年(LTS)

2.2 LTS 版本說明

LTS(Long Term Support) = 長期支持版本,推薦優(yōu)先選擇:

LTS 版本支持期限適用場景
Java 8已停止公開更新老項目維護
Java 11至2026年企業(yè)應用
Java 17至2029年新項目首選
Java 21至2031年最新項目

三、安裝 JDK 的四種方法

方法一:官網下載安裝(推薦新手)

步驟:

1. 訪問官網

Oracle 官網:https://www.oracle.com/java/technologies/downloads/
OpenJDK:https://jdk.java.net/

2. 選擇版本

  • 新項目:Java 17 或 21
  • 老項目:Java 8 或 11

3. 下載對應版本

芯片類型選擇版本
M1/M2/M3macOS ARM64 DMG Installer
IntelmacOS x64 DMG Installer

4. 安裝

# 雙擊下載的 .dmg 文件
# 按照安裝向導完成安裝

5. 驗證

java -version

方法二:使用 Homebrew 安裝(推薦開發(fā)者)

前提:已安裝 Homebrew

# 檢查 Homebrew 是否安裝
brew --version

# 如未安裝,先安裝 Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安裝步驟:

# 1. 搜索可用版本
brew search openjdk

# 2. 安裝 Java 17(推薦)
brew install openjdk@17

# 3. 安裝 Java 8
brew install openjdk@8

# 4. 安裝 Java 21
brew install openjdk@21

# 5. 查看安裝路徑
brew info openjdk@17

配置環(huán)境變量:

# 根據終端提示,執(zhí)行以下命令(以 Java 17 為例)
sudo ln -sfn /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk \
/Library/Java/JavaVirtualMachines/openjdk-17.jdk

# 添加到 shell 配置文件
echo 'export PATH="/opt/homebrew/opt/openjdk@17/bin:$PATH"' >> ~/.zshrc
echo 'export JAVA_HOME="/opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk"' >> ~/.zshrc

# 使配置生效
source ~/.zshrc

方法三:使用 SDKMAN 管理多版本(推薦高級用戶)

安裝 SDKMAN:

# 1. 安裝 SDKMAN
curl -s "https://get.sdkman.io" | bash

# 2. 初始化 SDKMAN
source "$HOME/.sdkman/bin/sdkman-init.sh"

# 3. 驗證安裝
sdk version

使用 SDKMAN 管理 Java:

# 1. 查看可用版本
sdk list java

# 2. 安裝 Java 17
sdk install java 17.0.8-tem

# 3. 安裝 Java 8
sdk install java 8.0.382-tem

# 4. 安裝 Java 21
sdk install java 21.0.0-tem

# 5. 查看已安裝版本
sdk current java

# 6. 切換版本
sdk use java 17.0.8-tem

# 7. 設置默認版本
sdk default java 17.0.8-tem

# 8. 卸載版本
sdk uninstall java 8.0.382-tem

優(yōu)勢: 可以輕松在多個 Java 版本之間切換,非常適合需要同時開發(fā)多個項目的開發(fā)者。

方法四:使用 IntelliJ IDEA 內置 JDK

如果你使用 IntelliJ IDEA 開發(fā):

1. 打開 IDEA → Settings → Build, Execution, Deployment → Build Tools → Maven
2. 在 "JDK for importer" 中選擇或下載 JDK
3. IDEA 會自動下載并配置 JetBrains Runtime

四、配置環(huán)境變量

4.1 找到配置文件

Shell 類型配置文件
zsh(macOS 默認)~/.zshrc
bash~/.bash_profile~/.bashrc

4.2 編輯配置文件

# 編輯配置文件
nano ~/.zshrc

4.3 添加環(huán)境變量

# ========== 單版本配置(Java 17)==========
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

# ========== 多版本切換配置 ==========
# 使用 /usr/libexec/java_home 動態(tài)獲取
export JAVA_HOME=$(/usr/libexec/java_home -v 17)

# 添加別名方便切換
alias java8='export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)'
alias java11='export JAVA_HOME=$(/usr/libexec/java_home -v 11)'
alias java17='export JAVA_HOME=$(/usr/libexec/java_home -v 17)'
alias java21='export JAVA_HOME=$(/usr/libexec/java_home -v 21)'

4.4 使配置生效

# 重新加載配置文件
source ~/.zshrc

# 驗證
echo $JAVA_HOME
java -version

五、多版本管理

5.1 使用 /usr/libexec/java_home 切換

# 查看所有已安裝版本
/usr/libexec/java_home -V

# 臨時切換到 Java 8
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8)

# 臨時切換到 Java 17
export JAVA_HOME=$(/usr/libexec/java_home -v 17)

# 臨時切換到 Java 21
export JAVA_HOME=$(/usr/libexec/java_home -v 21)

5.2 創(chuàng)建切換腳本

~/.zshrc 中添加:

# 創(chuàng)建切換函數
jdk() {
    version=$1
    export JAVA_HOME=$(/usr/libexec/java_home -v"$version")
    java -version
}

使用方法:

jdk 1.8    # 切換到 Java 8
jdk 17     # 切換到 Java 17
jdk 21     # 切換到 Java 21

5.3 項目級別配置

對于不同項目需要不同 Java 版本:

# 在項目目錄下創(chuàng)建 .env 文件
echo 'export JAVA_HOME=$(/usr/libexec/java_home -v 11)' > .env

# 使用 direnv 自動加載
brew install direnv
echo 'layout python' >> .envrc
direnv allow

六、驗證與測試

6.1 基礎驗證

# 檢查 Java 版本
java -version

# 檢查編譯器版本
javac -version

# 檢查 JAVA_HOME
echo $JAVA_HOME

# 檢查 Java 路徑
which java
which javac

6.2 創(chuàng)建測試程序

# 創(chuàng)建測試文件
cat > Test.java << EOF
public class Test {
    public static void main(String[] args) {
        System.out.println("Java 版本: " + System.getProperty("java.version"));
        System.out.println("Java 供應商: " + System.getProperty("java.vendor"));
        System.out.println("操作系統(tǒng): " + System.getProperty("os.name"));
    }
}
EOF

# 編譯
javac Test.java

# 運行
java Test

預期輸出:

Java 版本: 17.0.8
Java 供應商: Oracle Corporation
操作系統(tǒng): Mac OS X

6.3 檢查安裝完整性

# 檢查關鍵工具是否存在
ls $JAVA_HOME/bin | grep -E "java|javac|jar|javadoc"

七、常見問題解決

7.1 command not found

問題: java: command not found

解決方案:

# 1. 檢查是否安裝
/usr/libexec/java_home -V

# 2. 檢查 PATH
echo $PATH

# 3. 重新配置 JAVA_HOME
export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=$JAVA_HOME/bin:$PATH

# 4. 永久生效
echo 'export JAVA_HOME=$(/usr/libexec/java_home)' >> ~/.zshrc
source ~/.zshrc

7.2 多版本沖突

問題: 多個 Java 版本導致沖突

解決方案:

# 1. 查看所有版本
/usr/libexec/java_home -V

# 2. 卸載不需要的版本
# Oracle JDK: 運行卸載程序
# Homebrew: brew uninstall openjdk@8

# 3. 設置默認版本
export JAVA_HOME=$(/usr/libexec/java_home -v 17)

7.3 權限問題

問題: Permission denied

解決方案:

# 修復權限
sudo chown -R $(whoami) /Library/Java/JavaVirtualMachines

# 或使用 sudo 執(zhí)行
sudo java -version

7.4 M1/M2 芯片兼容問題

問題: ARM 架構兼容性問題

解決方案:

# 1. 下載 ARM64 版本(推薦)
# 2. 或使用 Rosetta 2 轉譯
softwareupdate --install-rosetta

# 3. 驗證架構
java -version
# 應顯示 "aarch64" 或 "arm64"

7.5 卸載 Java

# 1. 刪除 Oracle JDK
sudo rm -rf /Library/Java/JavaVirtualMachines/jdk*.jdk

# 2. 刪除偏好設置
sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane

# 3. 刪除 Java 插件
sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin

# 4. Homebrew 安裝的使用
brew uninstall openjdk@17

# 5. SDKMAN 安裝的使用
sdk uninstall java 17.0.8-tem

快速參考表

安裝命令速查

方法安裝 Java 17安裝 Java 8
官網下載 DMG 安裝下載 DMG 安裝
Homebrewbrew install openjdk@17brew install openjdk@8
SDKMANsdk install java 17.0.8-temsdk install java 8.0.382-tem

常用命令速查

命令用途
java -version查看 Java 版本
javac -version查看編譯器版本
/usr/libexec/java_home -V查看所有已安裝版本
echo $JAVA_HOME查看當前 JAVA_HOME
source ~/.zshrc刷新環(huán)境變量

最佳實踐建議

  1. 新手推薦:使用官網 DMG 安裝,簡單直接
  2. 開發(fā)者推薦:使用 Homebrew + SDKMAN,方便多版本管理
  3. 生產環(huán)境:使用 LTS 版本(Java 17 或 21)
  4. 老項目維護:保留 Java 8 環(huán)境
  5. 定期更新:關注安全更新,及時升級小版本

按照以上指南操作,你應該能在 macOS 上順利完成 Java JDK 的查看、安裝和配置。

以上就是macOS查看與安裝Java JDK的完整步驟的詳細內容,更多關于macOS查看與安裝Java JDK的資料請關注腳本之家其它相關文章!

相關文章

  • Java的finally塊居然沒執(zhí)行的6種問題解決

    Java的finally塊居然沒執(zhí)行的6種問題解決

    本文探討了Java中try-catch-finally結構下finally塊可能不執(zhí)行的情況,并分析了JVM層面的原理,文章列出了6種特殊情況,下面就來詳細的介紹一下
    2026-05-05
  • Springboot四種事件監(jiān)聽的實現方式詳解

    Springboot四種事件監(jiān)聽的實現方式詳解

    這篇文章主要介紹了Springboot四種事件監(jiān)聽的實現方式,事件監(jiān)聽是一種機制,可以定義和觸發(fā)自定義的事件,以及在應用程序中注冊監(jiān)聽器來響應這些事件,需要的朋友可以參考下
    2022-06-06
  • Idea安裝bpmn插件actiBPM的詳細過程(解決高版本無法安裝actiBPM插件)

    Idea安裝bpmn插件actiBPM的詳細過程(解決高版本無法安裝actiBPM插件)

    這篇文章主要介紹了Idea安裝bpmn插件actiBPM的詳細過程(解決高版本無法安裝actiBPM插件)的問題,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-01-01
  • java 生成二維碼實例

    java 生成二維碼實例

    這篇文章主要介紹了java 生成二維碼的實例,文中講解非常細致,代碼幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-07-07
  • Java中如何利用Set判斷List集合中是否有重復元素

    Java中如何利用Set判斷List集合中是否有重復元素

    在開發(fā)工作中,我們有時需要去判斷List集合中是否含有重復的元素,這時候我們不需要找出重復的元素,我們只需要返回一個?Boolean?類型就可以了,下面通過本文給大家介紹Java中利用Set判斷List集合中是否有重復元素,需要的朋友可以參考下
    2023-05-05
  • java實現全局監(jiān)聽鍵盤詳解

    java實現全局監(jiān)聽鍵盤詳解

    這篇文章主要為大家詳細介紹了java實現全局監(jiān)聽鍵盤的相關知識,文中的示例代碼講解詳細,具有一定的學習價值,感興趣的小伙伴可以了解下
    2024-01-01
  • 帶你深入理解MyBatis緩存機制

    帶你深入理解MyBatis緩存機制

    緩存是一般的ORM框架都會提供的功能,目的就是提升查詢的效率和減少數據庫的壓力,跟Hibernate 一樣,MyBatis 也有一級緩存和二級緩存,并且預留了集成第三方緩存的接口,這篇文章主要給大家介紹了關于MyBatis緩存機制的相關資料,需要的朋友可以參考下
    2021-10-10
  • 基于Java實現Socket編程入門

    基于Java實現Socket編程入門

    Java最初是作為網絡編程語言出現的,使得客戶端和服務器的溝通變成了現實,而在網絡編程中,使用最多的就是Socket,本文就來介紹一下基于Java實現Socket編程入門,感興趣的可以來了解一下
    2022-03-03
  • JAVA8獨有的map遍歷方式(非常好用)

    JAVA8獨有的map遍歷方式(非常好用)

    這篇文章主要介紹了JAVA8獨有的map遍歷方式(非常好用),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-12-12
  • java實現日歷窗口小程序

    java實現日歷窗口小程序

    這篇文章主要為大家詳細介紹了java實現日歷窗口小程序,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06

最新評論

广河县| 丹寨县| 平顶山市| 平和县| 法库县| 内江市| 广丰县| 内黄县| 隆化县| 蓬安县| 平陆县| 晋宁县| 乐业县| 建阳市| 察隅县| 珲春市| 嵩明县| 周至县| 仲巴县| 石景山区| 宜兰市| 正定县| 安平县| 铜山县| 普宁市| 崇仁县| 绥芬河市| 黄梅县| 博兴县| 朝阳市| 抚宁县| 大渡口区| 高青县| 北宁市| 曲水县| 罗山县| 宝坻区| 常熟市| 布拖县| 阿鲁科尔沁旗| 曲周县|