Mac安装配置jdk——jdk1.8,jdk11,jdk17

我们日常工作中可能会在多个项目工程中来回切换,每个项目依赖的jdk版本也可能高低不同,这样会出现jdk版本高低的不兼容,工程代码编译不过,无法本地运行等问题。
那么能不能在一台电脑上装多个版本的jdk呢?多个jdk版本是否可以灵活切换呢?
答案是 可以的!

接下来就介绍Mac上的安装配置流程

1、确认是否已经有jdk

打开终端控制台,执行下面命令,查看是否有已下载好的jdk包

bash 复制代码
➜ ~ cd /Library/Java/JavaVirtualMachines 
➜ JavaVirtualMachines~ ls
adoptopenjdk-11.jdk jdk-17.jdk          jdk1.8.0_202.jdk

2、下载指定版本jdk

点击这个网址下载:
https://www.oracle.com/java/technologies/downloads/

选择要下载的版本和操作系统,点击下载即可

3、安装jdk

下载好后,无脑一直点击下一步,完成安装即可

4、配置jdk环境

执行第一步的命令,可以看到,我已经下载好了jdk1.8,jdk11,jdk17三个版本,接下来进行环境配置。

执行下面命令,打开 .zshrc 文件修改环境变量

bash 复制代码
➜  JavaVirtualMachines cd           
➜  ~ vim ~/.zshrc 

修改 .zshrc 文件,按照下面的配置写

bash 复制代码
# JDK config

JAVA_HOME_8=/Library/Java/JavaVirtualMachines/jdk1.8.0_202.jdk/Contents/Home
JAVA_HOME_11=/Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home
JAVA_HOME_17=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home

# 默认配置是1.8
export JAVA_HOME=$JAVA_HOME_8
alias jdk8="export JAVA_HOME=$JAVA_HOME_8 && echo current JDK has switched to oracle jdk version 1.8. && java -version"
alias jdk11="export JAVA_HOME=$JAVA_HOME_11 && echo current JDK has switched to openjdk version 11. && java -version"
alias jdk17="export JAVA_HOME=$JAVA_HOME_17 && echo current JDK has switched to openjdk version 17. && java -version"

CLASS_PATH="$JAVA_HOME/lib"
PATH="$PATH:$JAVA_HOME/bin"

保存后执行下面命令,使配置生效

bash 复制代码
➜  ~ source ~/.zshrc

5、配置验证

验证当前生效的jdk版本为jdk1.8

bash 复制代码
➜  ~ java -version
java version "1.8.0_202"
Java(TM) SE Runtime Environment (build 1.8.0_202-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)

修改生效配置为jdk11,就执行下面的命令即可

bash 复制代码
➜  ~ jdk11
current JDK has switched to openjdk version 11.
openjdk version "11.0.3" 2019-04-16
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.3+7)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.3+7, mixed mode)

验证jdk11是否生效

bash 复制代码
➜  ~ java -version
openjdk version "11.0.3" 2019-04-16
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.3+7)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.3+7, mixed mode)

OK了!以上就配置完事儿了!

相关推荐
SimonKing8 分钟前
Apache Fory JSON或许可以替代FastJson
java·后端·程序员
格林威10 分钟前
C#高位深相机图像保存:12位16位图像保存方案,OpenCvSharp和Halcon实现
开发语言·人工智能·数码相机·计算机视觉·c#·视觉检测·工业相机
小小龙学IT13 分钟前
Qt Graphics View Framework(图形视图框架)深度解析:从 Scene/View/Item 到工业级 2D 场景
开发语言·数据库·qt
程序员良辰17 分钟前
【TongWeb7的M11】 首次登录密码修改 & 开启控制台远程访问
java·中间件·tomcat
吴声子夜歌18 分钟前
Java面试——设计模式(四)
java·设计模式·面试
paopaokaka_luck19 分钟前
基于springboot3+vue3+uniapp的剧本杀预约小程序(AI角色对话、协同过滤算法、地图Api、Echarts图形化分析)
java·前端·spring boot·学习·echarts
一嘴一个橘子21 分钟前
idea 的 双击Shift 全局搜索
java·ide·intellij-idea
nvvas21 分钟前
最新版 IntelliJ IDEA 全面介绍:面向现代 Java 开发者的智能 IDE
java·ide·intellij-idea
2601_9669496524 分钟前
Python 量化数据质量校验:如何确保股票历史日线数据不存在缺失交易日?
开发语言·人工智能·爬虫·python·量化策略·量化·quantdash
circuitsosk26 分钟前
Python 文件读写与上下文管理器:with 语句为什么是最佳选择
java·服务器·python·文件操作·上下文管理器·contextlib