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了!以上就配置完事儿了!

相关推荐
wand codemonkey38 分钟前
SpringbootWeb【入门】+MySQL【安装】+【DataDrip安装 】+【连接MySQL】
java·mysql·mybatis
Highcharts.js2 小时前
缺失数据可视化图表开发实战|Highcharts创建人员出生统计面积图表示例
开发语言·前端·javascript·信息可视化·highcharts·图表开发
测试员周周6 小时前
【Appium 系列】第16节-WebView-H5上下文切换 — 混合应用的自动化难点
运维·开发语言·人工智能·功能测试·appium·自动化·测试用例
Mahir088 小时前
Spring 循环依赖深度解密:从问题本质到三级缓存源码级解析
java·后端·spring·缓存·面试·循环依赖·三级缓存
杜子不疼.9 小时前
【C++ AI 大模型接入 SDK】 - DeepSeek 模型接入(上)
开发语言·c++·chatgpt
加号39 小时前
【C#】 串口通信技术深度解析及实现
开发语言·c#
sycmancia9 小时前
Qt——编辑交互功能的实现
开发语言·qt
RyFit10 小时前
SpringAI 常见问题及解决方案大全
java·ai
石山代码10 小时前
C++ 内存分区 堆区
java·开发语言·c++
绝知此事10 小时前
【算法突围 01】线性结构与哈希表:后端开发的收纳术
java·数据结构·算法·面试·jdk·散列表