MacBook手动安装多版本JDK8&17并配置灵活切换步骤

 更新时间:2026年03月27日 08:28:04   作者:1telescope  
作为一名JAVA开发人员,入手一台新电脑后免不了要配置JDK运行环境,这篇文章主要介绍了MacBook手动安装多版本JDK8&17并配置灵活切换的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下

一、前置准备

  1. 确认Mac芯片类型:点击左上角苹果图标→「关于本机」,查看处理器是「Intel」还是「Apple M系列」。
  2. 下载对应版本JDK:

二、手动安装多版本JDK

Mac系统会自动将不同版本JDK安装到统一目录,彼此独立不冲突,安装步骤如下:

步骤1:安装JDK 8

  1. 双击下载的.dmg文件,打开安装引导界面;
  2. 双击.pkg安装包,按提示点击「继续」「安装」,输入Mac开机密码完成安装;
  3. 安装完成后,JDK 8会被存放至:/Library/Java/JavaVirtualMachines/

步骤2:安装JDK 17

重复上述安装步骤,JDK 17会自动安装到同一目录,与JDK 8共存。

步骤3:验证安装目录

打开终端(Terminal),执行以下命令查看已安装的JDK列表:

ls /Library/Java/JavaVirtualMachines/

输出示例(不同版本目录名略有差异,以实际为准):

jdk1.8.0_401.jdk   jdk-17.0.9.jdk

三、配置环境变量(核心)

Mac默认使用zsh终端,我们通过修改~/.zshrc文件配置环境变量,并添加别名实现版本快速切换。

步骤1:编辑配置文件

终端执行命令打开配置文件:

nano ~/.zshrc

步骤2:添加多版本JDK配置

将以下内容粘贴到文件末尾(注意替换成你实际的JDK目录名):

# ===================== JDK 多版本配置(8&17) =====================
# 1. 定义各版本JDK的安装路径(根据实际目录名修改)
export JAVA_8_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_401.jdk/Contents/Home
export JAVA_17_HOME=/Library/Java/JavaVirtualMachines/jdk-17.0.9.jdk/Contents/Home
# 2. 设置默认JDK版本(推荐默认用17,可根据需求改为8)
export JAVA_HOME=$JAVA_17_HOME
# 3. 将JDK添加到系统PATH,确保java/javac命令生效
export PATH=$JAVA_HOME/bin:$PATH
# 4. 定义别名,一键切换JDK版本(核心!)
alias jdk8='export JAVA_HOME=$JAVA_8_HOME && export PATH=$JAVA_HOME/bin:$PATH && java -version'
alias jdk17='export JAVA_HOME=$JAVA_17_HOME && export PATH=$JAVA_HOME/bin:$PATH && java -version'

步骤3:保存并生效配置

  1. Ctrl+O保存文件,按Enter确认文件名,按Ctrl+X退出nano编辑器;
  2. 执行以下命令让配置立即生效:
source ~/.zshrc

四、验证配置与版本切换

1. 验证默认版本

终端执行以下命令,查看默认JDK版本(应为17):

java -version
javac -version

JDK 17输出示例:

java version "17.0.9" 2023-10-17 LTS
Java(TM) SE Runtime Environment (build 17.0.9+9-LTS-201)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.9+9-LTS-201, mixed mode, sharing)

2. 切换到JDK 8

终端执行别名命令,自动切换并输出JDK 8版本信息:

jdk8

JDK 8输出示例:

java version "1.8.0_401"
Java(TM) SE Runtime Environment (build 1.8.0_401-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.401-b09, mixed mode)

3. 切回JDK 17

执行别名命令即可快速切回:

jdk17

五、补充:永久修改默认版本

若想将默认JDK改为8,只需修改~/.zshrc中的这一行:

# 将 JAVA_17_HOME 改为 JAVA_8_HOME
export JAVA_HOME=$JAVA_8_HOME

修改后执行source ~/.zshrc生效,重新打开终端默认即为JDK 8。

总结

到此这篇关于MacBook手动安装多版本JDK8&17并配置灵活切换的文章就介绍到这了,更多相关MacBook手动安装多版本JDK内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • spring boot打包成war包的页面如何存放

    spring boot打包成war包的页面如何存放

    这篇文章主要介绍了spring boot打包成war包的页面该放到哪里,很多朋友对这个问题都很疑惑,今天小编给大家分享一篇教程,需要的朋友可以参考下
    2019-11-11
  • 聊一聊Java反射

    聊一聊Java反射

    工作中哪些地方比较容易用到反射,这篇文章就为大家介绍了工作中常用到的Java反射,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2016-11-11
  • 一文详解SpringBoot如何创建自定义的自动配置

    一文详解SpringBoot如何创建自定义的自动配置

    在实际开发中,仅靠SpringBoot的自动配置是远远不够的,所以这篇文章主要来和大家简单讲讲如何在SpringBoot创建自定义的自动配置吧
    2025-07-07
  • Java重点之基于比较的七大排序

    Java重点之基于比较的七大排序

    最近几天在研究排序算法,看了很多博客,发现网上有的文章中对排序算法解释的并不是很透彻,而且有很多代码都是错误的,所以我根据这几天看的文章,整理了一个较为完整的排序算法总结,本文中的所有算法均有JAVA实现,经本人调试无误后才发出,如有错误,请各位前辈指出
    2021-10-10
  • java连接mongoDB并进行增删改查操作实例详解

    java连接mongoDB并进行增删改查操作实例详解

    这篇文章主要介绍了java连接mongoDB并进行增删改查操作,结合实例形式详细分析了java环境下MongoDB扩展包的下载、安装及操作MongoDB连接、增删改查等相关操作技巧,需要的朋友可以参考下
    2019-04-04
  • java 高并发中volatile的实现原理

    java 高并发中volatile的实现原理

    这篇文章主要介绍了java 高并发中volatile的实现原理的相关资料,在多线程并发编程中synchronized和Volatile都扮演着重要的角色,Volatile是轻量级的synchronized,它在多处理器开发中保证了共享变量的“可见性”,需要的朋友可以参考下
    2017-03-03
  • Spring refresh()源码解析

    Spring refresh()源码解析

    这篇文章主要为大家介绍了Spring refresh()源码解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03
  • 解决mybatis where-if中if不能识别大写AND,OR的问题

    解决mybatis where-if中if不能识别大写AND,OR的问题

    这篇文章主要介绍了解决mybatis where-if中if不能识别大写AND,OR的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-02-02
  • jdk17 SpringBoot JPA集成多数据库的示例详解

    jdk17 SpringBoot JPA集成多数据库的示例详解

    这篇文章主要介绍了jdk17 SpringBoot JPA集成多数据库的示例代码,包括配置类、请求拦截器、线程上下文等相关知识,代码简单易懂,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-08-08
  • 详细分析Java并发集合ArrayBlockingQueue的用法

    详细分析Java并发集合ArrayBlockingQueue的用法

    这篇文章主要介绍了详细分析Java并发集合ArrayBlockingQueue的用法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04

最新评论