macOS 所有版本 JDK 安裝指南 (with Homebrew)


updated on 2020/3/11

關於 Homebrew

鑒於 Homebrew 的易用性, 本文提供的均為 Homebrew 安裝 JDK 的方法.

已了解 Homebrew 可以跳過這節直接看正文, 如果不了解的可能要先了解一下, 在電腦上安裝 Homebrew 之后再進行后續的 JDK 的安裝.

Homebrew 是 macOS 下的一個非常好用的包管理工具, 可以用於類似於 MySQL 的服務程序的管理, Homebrew Caskroom 則可用於應用程序 (GUI 軟件) 的安裝與管理.

懶人版

# 最新版 Oracle JDK
brew cask install oracle-jdk

# Oracle JDK11、Oracle JDK8 需要手動下載
# https://www.oracle.com/hk/java/technologies/javase-downloads.html

# 最新版 Oracle OpenJDK
brew cask install java

# Oracle OpenJDK11
brew cask install java11

# 使用該命令則安裝由 Oracle 提供的最新版的 OpenJDK
brew cask install java

# 使用該命令則安裝由 Oracle 提供的 OpenJDK11
brew cask install java11

# OpenJDK 在 Oracle 不再維護后會轉交給 RedHat 維護
brew cask install openjdk@11

# AdoptOpenJDK 
brew cask install AdoptOpenJDK/openjdk/adoptopenjdk8
brew cask install AdoptOpenJDK/openjdk/adoptopenjdk9
brew cask install AdoptOpenJDK/openjdk/adoptopenjdk10
brew cask install AdoptOpenJDK/openjdk/adoptopenjdk11
brew cask install AdoptOpenJDK/openjdk/adoptopenjdk12
brew cask install AdoptOpenJDK/openjdk/adoptopenjdk

# Azul Zulu 提供了 JDK 7
# Azul Zulu 也提供其他版本的 JDK 像 zulu8、zulu11 等
brew cask install homebrew/cask-versions/zulu7
brew cask install homebrew/cask-versions/zulu8
brew cask install homebrew/cask-versions/zulu11
brew cask install homebrew/cask-versions/zulu

# Apple 提供的 JDK6
brew cask install homebrew/cask-versions/java6

JDK 的版本選用

2019 年之后, Oracle 對 Java 的商業模式進行了一系列改革, 多種版本的 JDK 開始出現在開發者的視野中.

整體來看, 存在三個版本的 JDK, 分別是 Oracle JDK、Oracle 編譯的 OpenJDK 和第三方廠商編譯的 OpenJDK. 其實三者在功能上並沒有明顯的差異, 主要在一些版權相關的 API 上有一些差別(如 OpenJDK 就無法使用 Oracle 版本中所使用的字體渲染 API).

Oracle JDK

關於 Oracle JDK 有一個基本的概念: Oracle 規定在一個 Oracle JDK 的生命周期內 (指的是下一個版本的 JDK 推出之前) 可以免費商用, 而生命周期之外繼續在生產環境中使用, 想要繼續商用 Oracle 對該版本的后續更新就需要付費.

但並不是說下載這些版本 JDK 的后續更新就需要付費, 開發者可以從 Java SE - Downloads | Oracle Technology Network 免費下載並使用, 但是在生產環境中使用它們就需要付費了. 另外可以看到這個頁面里只有最新版、JDK11 和 JDK8 的下載, 這是為了維護方便, Oracle 僅提供 LTS(長期支持) 版本的維護. 據稱 JDK11 的維護將持續到 2024 年.

所以說如果想要使用Oracle JDK 又不想付費, 只要一直使用最新版本的JDK就可以了.

# 運行以下命令會安裝最新版本的 Oracle JDK
## 2019-5, 該命令會安裝 Oracle JDK 12
## 2020-3, 該命令則會安裝 Oracle JDK 13
brew cask install oracle-jdk

另外兩個 LTS 版本的 Oracle JDK 無法通過 Homebrew 安裝, 需要手動從 Java SE - Downloads | Oracle Technology Network 獲取.

Oracle OpenJDK

Oracle 還提供其編譯的 OpenJDK, 事實上這個 OpenJDK 與其他 OpenJDK 幾乎沒有區別.

# 使用該命令則安裝由 Oracle 提供的最新版的 OpenJDK
## 2020-3, 這個命令會安裝 OpenJDK13
brew cask install java

# 使用該命令則安裝由 Oracle 提供的 OpenJDK11
brew cask install java11

# OpenJDK 在 Oracle 不再維護后會轉交給 RedHat 維護
brew cask install openjdk@11

AdoptOpenJDK

可以看到 Oracle 提供的 JDK 版本非常有限, 想要使用更多版本的 JDK, 就必須要尋求開源世界的幫助, 一個不錯的選擇就是 AdoptOpenJDK.

AdoptOpenJDK 是完全免費的、無品牌的 OpenJDK 版本,基於 GPL 開源協議(+Classpath Extension), 以免費軟件的形式提供社區版的 OpenJDK 二進制包, 公司也可安全且放心使用.

與 Oracle 提供的 OpenJDK 不同,AdoptOpenJDK 會持續為 OpenJDK 提供類似於 Oracle JDK 的維護, 而且通過 AdoptOpenJDK 可以安裝最多版本的 JDK.

brew cask install AdoptOpenJDK/openjdk/adoptopenjdk8
brew cask install AdoptOpenJDK/openjdk/adoptopenjdk9
brew cask install AdoptOpenJDK/openjdk/adoptopenjdk10
brew cask install AdoptOpenJDK/openjdk/adoptopenjdk11
brew cask install AdoptOpenJDK/openjdk/adoptopenjdk12

# 安裝最新版本 OpenJDK
brew cask install AdoptOpenJDK/openjdk/adoptopenjdk

JDK7 與 Zulu

JDK7 甚至 AdoptOpenJDK 都不提供了, 這時就要求助於一些商業公司, Azul Zulu 提供了自編譯的 zulu, 在提供付費支持的商業版本外, Azul 也為 zulu 提供免費的社區技術支持.

# 通過安裝 zulu7 我們可以安裝 OpenJDK7. 
brew cask install homebrew/cask-versions/zulu7

# Azul Zulu 也提供其他版本的 JDK 像 zulu8、zulu11 等
brew cask install homebrew/cask-versions/zulu8
brew cask install homebrew/cask-versions/zulu11
brew cask install homebrew/cask-versions/zulu

JDK6

年久的 JDK6 主要由 Apple 提供, 按照以下命令即可安裝

brew cask install homebrew/cask-versions/java6


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM