当前位置: 首页 > news >正文

Mac 4步 安装 Jenv 管理多版本JDK

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/Home1.8.0_261 (x86_64) "Oracle Corporation" - "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_261.jdk/Contents/Home1.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.81.8.0.261oracle64-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/Home1.8.261.12 (x86_64) "Oracle Corporation" - "Java" /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home1.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 versionssystem1.81.8.0.2612121.021.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 versionssystem1.81.8.0.2612121.021.0.8oracle64-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

http://www.lryc.cn/news/626301.html

相关文章:

  • Mac 上安装并使用 frpc(FRP 内网穿透客户端)指南
  • 第四章:大模型(LLM)】07.Prompt工程-(4)思维链(CoT, Chain-of-Thought)Prompt
  • 第四章:大模型(LLM)】07.Prompt工程-(5)self-consistency prompt
  • 编译安装 Nginx
  • 从AI小智固件到人类智能:计算技术的层级跃迁
  • Linux-----《Linux系统管理速通:界面切换、远程连接、目录权限与用户管理一网打尽》
  • JavaScript 检查给定的四个点是否形成正方形(Check if given four points form a square)
  • [特殊字符] 小豆包 API 聚合平台:让 AI 接入更简单、更高效
  • PyTorch API 7
  • Linux 文件系统权限管理(补充)
  • pinctrl和gpio子系统实验
  • 前后端联合实现文件上传,实现 SQL Server image 类型文件上传
  • LeetCode热题100--101. 对称二叉树--简单
  • 【Kafka】常见简单八股总结
  • 力扣 30 天 JavaScript 挑战 第36天 第8题笔记 深入了解reduce,this
  • Linux Shell 常用操作与脚本示例详解
  • CNN 在故障诊断中的应用:原理、案例与优势
  • DAY 50 预训练模型+CBAM模块
  • 排查Redis数据倾斜引发的性能瓶颈
  • VScode ROS文件相关配置
  • 什么是大数据平台?大数据平台和数据中台有什么关系?
  • 网络间的通用语言TCP/IP-网络中的通用规则3
  • A股大盘数据-20250819 分析
  • 【PyTorch】单对象分割项目
  • Arthas 全面使用指南:离线安装 + Docker/K8s 集成 + 集中管理
  • Python入门第11课:Python网络请求入门,使用requests库轻松获取网页数据
  • Linux的基本操作
  • 浅看架构理论(一)
  • RK3568 Linux驱动学习——Linux设备树
  • 【SQL优化案例】统计信息缺失