1、安装 Jenv
TsengdeMacBook-Pro:~ zeng$ brew install jenv
==> Auto-updating Homebrew...
Adjust how often this is run with `$HOMEBREW_AUTO_UPDATE_SECS` or disable with
`$HOMEBREW_NO_AUTO_UPDATE=1`. Hide these hints with `$HOMEBREW_NO_ENV_HINTS=1` (see `man brew`).
==> Auto-updated Homebrew!
Updated 2 taps (homebrew/core and homebrew/cask).
==> New Formulae
aiac: Artificial Intelligence Infrastructure-as-Code Generator
anyzig: Universal zig executable that runs any version of zig
apache-polaris: Interoperable, open source catalog for Apache Iceberg
cogapp: Small bits of Python computation for static files
electric: Real-time sync for Postgres
entt: Fast and reliable entity-component system for C++
flexget: Multipurpose automation tool for content
glom: Declarative object transformer and formatter, for conglomerating nested data
go-passbolt-cli: CLI for passbolt
go@1.24: Open source programming language to build simple/reliable/efficient software
goodls: CLI tool to download shared files and folders from Google Drive
influxdb@2: Time series, events, and metrics database
limine: Modern, advanced, portable, multiprotocol bootloader and boot manager
mk: Wrapper for auto-detecting build and test commands in a repository
msolve: Library for Polynomial System Solving through Algebraic Methods
nessie: Transactional Catalog for Data Lakes with Git-like semantics
oasis: CLI for interacting with the Oasis Protocol network
omnara: Talk to Your AI Agents from Anywhere
qman: Modern man page viewer
quadcastrgb: Set RGB lights on HyperX QuadCast S and Duocast microphones
wgpu-native: Native WebGPU implementation based on wgpu-core
==> Fetching downloads for: jenv
==> Fetching jenv
==> Downloading https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles/jenv-0.5.9.all.bottle.tar.gz
################################################################################################## 100.0%
==> Pouring jenv-0.5.9.all.bottle.tar.gz
==> Caveats
To activate jenv, add the following to your shell profile e.g. ~/.profile
or ~/.zshrc:
export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"
==> Summary
🍺 /usr/local/Cellar/jenv/0.5.9: 91 files, 100.8KB
==> Running `brew cleanup jenv`...
Disable this behaviour by setting `HOMEBREW_NO_INSTALL_CLEANUP=1`.
Hide these hints with `HOMEBREW_NO_ENV_HINTS=1` (see `man brew`).
==> No outdated dependents to upgrade!
TsengdeMacBook-Pro:~ zeng$
2、配置 Jenv 生效
TsengdeMacBook-Pro:~ zeng$ echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.bash_profile
TsengdeMacBook-Pro:~ zeng$ echo 'eval "$(jenv init -)"' >> ~/.bash_profile
TsengdeMacBook-Pro:~ zeng$ source ~/.bash_profile
jenv has been updated, process to refresh plugin links
TsengdeMacBook-Pro:~ zeng$ jenv versions
* system (set by /Users/zeng/.jenv/version)
TsengdeMacBook-Pro:~ zeng$
3、添加 JDK 1.8.0_261
/usr/libexec/java_home -V
Matching Java Virtual Machines (3):
1.8.261.12 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
1.8.0_261 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home
1.8.0_231 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk/Contents/Home
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
TsengdeMacBook-Pro:~ zeng$ jenv add /Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home
oracle64-1.8.0.261 added
1.8.0.261 added
1.8 added
TsengdeMacBook-Pro:~ zeng$ jenv versions
* system (set by /Users/zeng/.jenv/version)
1.8
1.8.0.261
oracle64-1.8.0.261
TsengdeMacBook-Pro:~ zeng$ jenv global oracle64-1.8.0.261
TsengdeMacBook-Pro:~ zeng$
4、设置全局默认 JDK
TsengdeMacBook-Pro:~ zeng$ jenv global oracle64-1.8.0.261
TsengdeMacBook-Pro:~ zeng$ java -version
java version "1.8.0_261"
Java(TM) SE Runtime Environment (build 1.8.0_261-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.261-b12, mixed mode)
TsengdeMacBook-Pro:~ zeng$
安装 JDK21.0.8
/usr/libexec/java_home -V
Matching Java Virtual Machines (4):
21.0.8 (x86_64) "Oracle Corporation" - "Java SE 21.0.8" /Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home
1.8.261.12 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home
1.8.0_261 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home
TsengdeMacBook-Pro:~ zeng$ jenv add /Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home
oracle64-21.0.8 added
21.0.8 added
21.0 added
21 added
TsengdeMacBook-Pro:~ zeng$ jenv versions
system
1.8
1.8.0.261
21
21.0
21.0.8
* oracle64-1.8.0.261 (set by /Users/zeng/.jenv/version)
oracle64-21.0.8
TsengdeMacBook-Pro:~ zeng$
设置 JDK 21 为全局默认
TsengdeMacBook-Pro:~ zeng$ jenv global oracle64-21.0.8
TsengdeMacBook-Pro:~ zeng$ jenv versions
system
1.8
1.8.0.261
21
21.0
21.0.8
oracle64-1.8.0.261
* oracle64-21.0.8 (set by /Users/zeng/.jenv/version)
TsengdeMacBook-Pro:~ zeng$ java -version
java version "21.0.8" 2025-07-15 LTS
Java(TM) SE Runtime Environment (build 21.0.8+12-LTS-250)
Java HotSpot(TM) 64-Bit Server VM (build 21.0.8+12-LTS-250, mixed mode, sharing)
TsengdeMacBook-Pro:~ zeng$
JDK 21 成为默认版本:
jenv global oracle64-21.0.8
或者只在当前 shell 使用:
jenv shell oracle64-21.0.8
或在某个项目中使用:
cd /path/to/your/java21-project jenv local oracle64-21.0.8 # 会生成 .java-version 文件
JDK17 免登录下载地址
Java Archive Downloads - Java SE 17.0.12 and earlier
