jenv实现mac下多版本jdk管理以及切换

文章目录

背景

多个java项目使用jdk版本不一样,mac机器下需要实现多版本的jdk管理. 使用工具jenv

jdk多版本管理

  1. oracle javase 官网选择合适的jdk版本,比如 我使用jdk11 下载正确的 macOS Arm 64 dmg 版本. 然后在mac系统下双击dmg包进行安装. 安装好之后jdk路径为 /Library/Java/JavaVirtualMachines/jdk-17.jdk
  2. 使用指令 jenv add /Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home 添加到jenv. 使用 jenv versions 就可以查看到此版本jdk成功安装.
  3. jenv切换当前Jdk到新安装的17版本,使用指令 jenv local 17 进行版本切换, 查看 JAVA_HOME 环境变量 ~/.jenv/versions/17. 至此实现jenv对jdk多版本的控制以及切换.

开发环境配置

如果你只是用maven对项目进行构建,开发过程中不使用idea,那么这里只需要配置好maven使用的jdk版本即可:

先使用 jenv local 17 切换到你使用的jdk版本,在运行 mvn -v可以确定当前maven使用的版本是jdk17

如果你使用的是idea开发java项目,那么配置的地方就耀注意了:

  1. idea jdk追加: File->Project Structure->SDKS->Add SDK: /Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home 到mac上安装的jdk版本的home目录.
  2. idea配置项目的jdk: File-Project Structure->Project SDKLanguage Level 配置正确;然后 File-Project Structure->Modules SourceDependencies配置正确.
  3. idea maven: Settings->Build Tools->Maven: Maven home: /usr/local/apache-maven-3.9.4 到maven安装根目录.其次是importing 中的 JDK for importer 配置正确jdk版本, runner 中的JRE 配置正确版本.
相关推荐
名字还没想好☜7 小时前
Go 的 time.After 在 select 循环里内存泄漏:定时器堆积原理与 timer.Reset 正确姿势
java·数据库·golang·go·goroutine
SomeB1oody7 小时前
【RustyML入门】1.0. 快速上手
开发语言·后端·机器学习·rust·教程
圆山猫7 小时前
[Virtualization](三):RISC-V H-extension 与 Guest 执行模式
android·java·risc-v
狗凯之家源码网7 小时前
短剧系统搭建实战:源码功能与商业变现效果全景展示
开发语言·php
caishenzhibiao7 小时前
期货先行者主图 同花顺期货通指标
java·c语言·c#
史呆芬8 小时前
分布式事务实战:微服务跨服务数据一致性解决方案
java·后端·spring cloud
IT界的老黄牛8 小时前
限流命中后该怎么办:直接丢、阻塞等待、延迟重投三种姿势的取舍
java·rocketmq·redisson·令牌桶·削峰·分布式限流
易筋紫容9 小时前
创建型模式:对象的诞生艺术
开发语言·前端·javascript
888CC++9 小时前
C++ 快速学习指南:从入门到进阶的实战路线
开发语言·c++
daad7779 小时前
记录matlab状态机demo
java·网络·matlab