欢迎大家来到IT世界,在知识的湖畔探索吧!
macOS版Java21下载
- 访问Java的官网,其访问地址是https://www.oracle.com/java/
- 点击右上角的Download Java,跳转到Java的下载界面
Java的下载地址是https://www.oracle.com/java/technologies/downloads/
目前(2024/10/03)Oracle官方提供最新可用的Java版本(JDK版本)是Java22、Java21 和Java17,最新的LTS版本是Java21
本次我们下载的是Java21,所以点击JDK21 切换到Java21的下载
根据 Oracle 免费条款和条件 (NFTC),JDK 21 二进制文件可以在生产中免费使用,并且可以免费重新分发。
JDK 21 将根据 NFTC 接收更新,直到 2026 年 9 月,即下一个 LTS 发布一年后。后续的 JDK 21 更新将根据 Java SE OTN 许可证 (OTN) 进行许可,并且超出 OTN 许可证有限免费授予的生产使用将需要付费。
目前Java21支持三个操作系统
- Linux
- macOS
- Windows
大家在下载Java21的时候需要根据自己所使用CPU和操作系统的版本选择对应版本的Java21
macOS Sonoma可以点击左上角的苹果菜单
在弹出的面板中查看系统版本信息
目前本机使用的系统是macOS Sequoia 15.0,芯片是M1 Max
- 根据CPU架构和系统版本选择Java21
如果你的Mac电脑使用的Intel CPU,那么选择macOS版 x64 DMG Installer的jdk-21_macos-x64_bin.dmg
如果你的电脑使用的是Apple CPU,例如M1 Max,M1 Ultra,M2 Max,M2 Ultra,M3 Max等等,那么选择macOS版ARM64 DMG Installer的jdk-21_macos-aarch64_bin.dmg
由于本机使用的是Apple M1 Max CPU,因此选择macOS版ARM64 DMG Installer的jdk-21_macos-aarch64_bin.dmg
- 下载jdk-21_macos-aarch64_bin.dmg
下载Oracle ARM架构 64位macOS版Java21时目前不需要同意许可协议以及注册、登录Oracle账号
点击https://download.oracle.com/java/21/latest/jdk-21_macos-aarch64_bin.dmg下载Oracle ARM64位架构macOS版Java21
使用快捷键 Option+Command+L 可以打开下载内容,查看下载的速度以及所需的时间
当Java21下载完成后,点击在Finder中显示
默认在下载目录(/Users/liuguanglei/Downloads)下会看到Java21的安装包jdk-21_macos-aarch64_bin.dmg
macOS版Java21安装
1 macOS版Java21安装过程
- 双击Java21安装包jdk-21_macos-aarch64_bin.dmg
- 双击JDK 21.0.4.pkg启动安装器
- 介绍
点击继续
- 目的宗卷
你要如何安装此软件?默认选择为这台电脑上的所有用户安装
选择一个目的宗卷:为这台电脑上的所有用户安装,点击继续
- 安装类型
默认选择标准安装,点击安装即可
安装之前安装器会提示 “安装器”正在尝试安装新软件 使用触控ID或输入密码以允许此次操作
输入密码或者使用TouchID后安装器就会开始安装,安装过程几秒钟就可以完成
- 安装完成
安装完成后可以点击访问JavaSE文档和关闭
- 访问JavaSE文档:跳转到Java21的官方文档
- 关闭:关闭安装向导,完成Java21安装
关闭安装向导时还会提示你要将“JDK 21.0.4”安装器移到废纸篓吗?,建议点击保留,这样下次重装时不需要重新下载Java21
- 推出桌面的JDK 21.0.4
选中桌面的JDK 21.0.4,然后右键推出即可,当然也可以使用快捷键Command+E推出
推出成功
2 macOS版Java21安装目录
默认情况下Oracle ARM64位架构macOS版Java21安装目录是/Library/Java/JavaVirtualMachines/jdk-21.jdk
依次点击访达>前往>前往文件夹,快捷键是Shift+Command+G
输入路径/Library/Java/JavaVirtualMachines/jdk-21.jdk后回车
不过我们需要了解的是/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home目录
Java21 Home目录说明
目录 |
说明 |
bin |
该目录下主要存放JDK的各种工具命令,例如javac和java |
conf |
该目录下主要存放JDK相关的配置文件 |
include |
该目录下主要存放一些平台的头文件 |
jmods |
该目录下主要存放JDK的各种模块 |
legal |
该目录下主要存放JDK各模块的授权文档 |
lib |
该目录下主要存放JDK工具的一些补充jar包和源代码,Java源码src.zip在该目录下 |
man |
该目录下主要是存放JDK的帮助文档 |
作为Java初学者来说,目前只需要关注bin目录和lib文件夹中的src.zip压缩文件
- bin目录:存放Java提供的开发工具,例如javac,java,javadoc,javap等等
- src.zip:存放Java源代码文件(.java结尾的文件)
可以双击src.zip解压后查看,默认解压在下载目录
src目录存放的是Java源代码文件(.java结尾)
例如查看String.java
String.java源文件在src/java.base/java/lang目录下
然后选择src/java.base/java/lang/String.java
使用Visual Studio Code文本编辑器打开String.java
macOS版Java21配置
1 macOS版Java21配置说明
当Oracle ARM64位架构macOS版Java21安装完成后,你会发现没有配置PATH环境变量,也可以在终端的任意路径下使用javac和java,例如javac和java通过 -version选项查看Java编译器和解释器的版本信息
没有配置JAVA_HOME环境变量,也可以在终端的maven bin目录(/Users/liuguanglei/workspace/soft/java/apache-maven-3.9.9/bin)下使用maven命令 mvn –version查看Maven版本信息以及依赖的Java环境信息,其中./表示当前路径
Q:这样是不是意味着不需要配置Java21的PATH环境变量和JAVA_HOME环境变量?
A:依然需要配置,因为后期我们会使用多个不同版本的JDK,例如在公司开发项目时使用Java8,而学习Java新特性时使用Java17或者Java21,那么就会有切换Java版本的需求,因此还需要配置Java21的PATH环境变量和JAVA_HOME环境变量。
2 macOS版Java21配置JAVA_HOME环境变量
JAVA_HOME指的就是Java21的Home目录(/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home)
配置JAVA_HOME环境变量的目的就是方便配置Java的PATH环境变量以及通过修改JAVA_HOME环境变量实现在终端上切换不同版本的Java,例如Java8和Java17的相互切换,Java17和Java21的相互切换。
- 启动Visual Studio Code
- 打开/Users/liuguanglei目录
- 创建配置文件
macOS Sequoia使用的Shell是zsh,因此在家目录(/Users/liuguanglei)下创建.zshrc配置文件
在文件资源管理器右键New File
设置文件名为.zshrc后回车
Visual Studio Code会自动打开.zshrc配置文件
- 编辑.zshrc配置文件
在.zshrc文件中配置Oracle ARM64位架构macOS版Java21的JAVA_HOME环境变量
# 配置Oracle ARM64位架构macOS版Java21的JAVA_HOME环境变量 export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home
欢迎大家来到IT世界,在知识的湖畔探索吧!
- 打开终端
依次点击Visual Studio Code菜单栏的Terminal>New Terminal
就可以启动Visual Studio Code内置的终端
- 验证配置
在终端上输入 echo $JAVA_HOME命令回车
如果能够输出Java21的Home目录(/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home),则表示Java21的JAVA_HOME环境变量配置成功
3 macOS版Java21配置PATH环境变量
3.1 PATH环境变量介绍
PATH环境变量的本质就是一系列路径,例如/bin,/usr/bin,/usr/local/bin等等,多个路径之间使用冒号(:)隔开,macOS下可以在终端上使用echo $PATH查看系统PATH环境变量
PATH环境变量的作用就是在终端上执行命令时,系统会从当前路径和PATH环境变量配置的路径下查找命令对应的可执行程序,然后执行该程序。
例如date命令可以查看系统日期,而where date 可以查看到date命令对应的可执行程序路径,正因为/bin目录在PATH环境变量中,因此在终端输入date命令实际上执行的是/bin目录下的date程序
如果输入一个不存在的命令,那么shell会提示command not found,因为在PATH环境变量对应的路径下找不到一个名为datexxx的命令(程序)
3.2 PATH环境变量的使用
需求:实现在macOS终端(例如内置终端和第三方终端iTerm)的任意路径下输入DingTalk就可以启动钉钉
此次测试的钉钉版本为Version 7.6.16 ()
- 找到钉钉安装目录
macOS系统中所有的软件都安装在访达的应用程序
选择钉钉,右键 显示包内容
此时会打开Contents目录
而在Contents/MacOS下刚好有个DingTalk,它是一个Unix可执行文件
只要将它所在的路径(/Applications/DingTalk.app/Contents/MacOS)配置在PATH环境变量中即可实现在终端的任意路径下输入DingTalk就可以启动钉钉
- 启动Visual Studio Code
- 打开/Users/liuguanglei目录
- 打开.zshrc配置文件
打开后可以看到Java21的JAVA_HOME环境变量的配置
- 编辑.zshrc配置文件
配置钉钉的PATH环境变量
欢迎大家来到IT世界,在知识的湖畔探索吧!# 配置钉钉的PATH环境变量 export PATH=$PATH:/Applications/DingTalk.app/Contents/MacOS
- 打开终端
依次点击Visual Studio Code菜单栏的New Terminal>New Terminal
就可以启动Visual Studio Code内置的终端
- 验证配置
在终端的任意路径下执行echo $PATH查看系统PATH环境变量
如果系统PATH环境变量中是否已经包含钉钉的PATH环境变量配置则表示钉钉的PATH环境变量配置成功
- 启动钉钉
在终端的任意路径输入钉钉回车后看是否能够启动成功
如果能够启动则表示钉钉的PATH环境变量配置成功
- 在用户家目录下启动钉钉
- 在根目录启动钉钉
3.3 macOS版Java21配置PATH环境变量
- 启动Visual Studio Code
- 打开/Users/liuguanglei目录
- 打开.zshrc配置文件
打开后可以看到Java21的JAVA_HOME环境变量以及钉钉的PATH环境变量配置
- 编辑.zshrc配置文件
在.zshrc配置文件配置Oracle ARM64位架构macOS版Java21的PATH环境变量
# 配置Oracle ARM64位架构macOS版Java21的PATH环境变量 export PATH=$PATH:/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home/bin
- 打开终端
依次点击Visual Studio Code菜单栏的New Terminal>New Terminal
就可以启动Visual Studio Code内置的终端
- 验证配置
首先在终端的任意路径下执行echo $PATH查看系统PATH环境变量,如果系统PATH环境变量中包含Java21的PATH环境变量则表示Java21的PATH环境变量配置成功
然后在终端的任意路径使用Java提供的javac和java结合-version选项查看Java编译器和解释器的版本信息应该为Java21
3.4 macOS版Java21使用JAVA_HOME配置PATH环境变量
Q:为什么Java21要使用JAVA_HOME配置Path环境变量
A:切换JDK版本时只需要修改JAVA_HOME环境变量的变量值即可
- 启动Visual Studio Code
- 打开/Users/liuguanglei目录
- 打开.zshrc配置文件
打开后可以看到Java21的JAVA_HOME环境变量、PATH环境变量以及钉钉的PATH环境变量配置
- 编辑.zshrc配置文件
在.zshrc配置文件使用JAVA_HOME环境变量配置Oracle ARM64位架构macOS版Java21的PATH环境变量
欢迎大家来到IT世界,在知识的湖畔探索吧!# 使用JAVA_HOME环境变量配置Oracle ARM64位架构macOS版Java21的PATH环境变量 export PATH=$PATH:$JAVA_HOME/bin
- 打开终端
依次点击Visual Studio Code菜单栏的New Terminal>New Terminal
就可以启动Visual Studio Code内置的终端
- 验证配置
首先在终端的任意路径下执行echo $PATH查看系统PATH环境变量,如果系统PATH环境变量中包含Java21的PATH环境变量则表示Java21的PATH环境变量配置成功
然后在终端的任意路径使用Java提供的javac和java结合-version选项查看Java编译器和解释器的版本信息应该为Java21
macOS版Java21和Java17相互切换
1 如何实现macOS版Java21和Java17相互切换
由于开发项目时使用Java17,但是学习JDK新特性时安装了Java21,因此此时电脑上同时存在两个不同版本的JDK,分别是Oracle ARM64位架构macOS版本的Java17和Java21。
那么如何在这两个版本中间切换?
首先需要知道当前使用的Java版本
在终端的任意路径通过javac -version和java -version得知目前使用的是Java21
Q:为什么是Java21?
A:因为在.zshrc配置文件中JAVA_HOME环境变量的值是Java21的Home目录(/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home),而Java的PATH环境变量引用了JAVA_HOME环境变量
那么想要实现Java17和Java21相互切换,只需要修改JAVA_HOME环境变量的值即可
2 macOS版Java21切换到Java17
想要从Java21切换到Java17,只需要将JAVA_HOME环境变量的值修改成Java17的Home路径(/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home)
- 启动Visual Studio Code
- 打开/Users/liuguanglei目录
- 打开.zshrc配置文件
打开后可以看到Java21的JAVA_HOME环境变量、PATH环境变量以及钉钉的PATH环境变量配置
- 编辑.zshrc配置文件
在.zshrc配置文件配置Oracle ARM64位架构macOS版Java17的PATH环境变量
# 配置Oracle ARM64位架构macOS版Java17的JAVA_HOME环境变量 export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home # 配置钉钉的PATH环境变量 export PATH=$PATH:/Applications/DingTalk.app/Contents/MacOS # 使用JAVA_HOME环境变量配置Oracle ARM64位架构macOS版Java17的PATH环境变量 export PATH=$PATH:$JAVA_HOME/bin
- 启动终端
依次点击Visual Studio Code菜单栏的New Terminal>New Terminal
就可以启动Visual Studio Code内置的终端
- 验证配置
首先在终端的任意路径输入echo $JAVA_HOME,查看JAVA_HOME环境变量的变量值是否为Java17的Home目录
然后在终端的任意路径使用Java提供的javac和java命令结合-version选项查看Java编译器和解释器的版本信息是否为Java17,如果是Java17则表示当前Java版本成功从Java21切换到Java17
3 macOS版Java17切换到Java21
从Java17再次切换到Java21,只需要将JAVA_HOME环境变量的变量值改成Java21的Home目录(/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home )
- 启动Visual Studio Code
- 打开/Users/liuguanglei目录
- 打开.zshrc配置文件
打开后可以看到Java17的JAVA_HOME环境变量、PATH环境变量以及钉钉的PATH环境变量配置
- 编辑.zshrc配置文件
在.zshrc配置文件配置Oracle ARM64位架构macOS版Java21的PATH环境变量
# 配置Oracle ARM64位架构macOS版Java21的JAVA_HOME环境变量 export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-21.jdk/Contents/Home # 配置钉钉的PATH环境变量 export PATH=$PATH:/Applications/DingTalk.app/Contents/MacOS # 使用JAVA_HOME环境变量配置Oracle ARM64位架构macOS版Java21的PATH环境变量 export PATH=$PATH:$JAVA_HOME/bin
- 启动终端
依次点击Visual Studio Code菜单栏的New Terminal>New Terminal
就可以启动Visual Studio Code内置的终端
- 验证配置
首先在终端的任意路径输入echo $JAVA_HOME,查看JAVA_HOME环境变量的变量值是否为Java21的Home目录
然后在终端的任意路径使用Java提供的javac和java命令结合-version选项查看Java编译器和解释器的版本信息是否为Java21,
如果是Java21则表示当前Java版本成功从Java17切换到Java21
macOS版Java21卸载
Q:什么时候需要卸载Java21
A:如果不再使用(例如公司未来的项目全部使用Java25开发)Java21时就可以将其卸载
Oracle ARM64位架构macOS版Java21卸载需要删除Java21安装目录
除此以外还要删除.zshrc配置文件,.zshrc配置文件配置了Java21的PATH环境变量和JAVA_HOME环境变量
1 删除Java21安装目录
Oracle ARM64位架构macOS版Java21的安装目录是/Library/Java/JavaVirtualMachines/jdk-21.jdk
选中jdk-21.jdk,右键移到废纸篓,删除Java21的安装目录
然后使用Touch ID或者使用密码
这样就可以将Java21的安装目录移动到废纸篓
使用command+Shift+delete清空废纸篓
删除成功后JavaVirtualMachines目录下看不到Java21的安装目录
2 删除配置文件
- 启动Visual Studio Code
- 打开/Users/liuguanglei目录
- 删除.zshrc配置文件
选择.zshrc配置文件,右键选择Delete
3 验证Java21是否卸载成功
删除Java21安装目录以及.zshrc文件后,在终端的任意路径使用javac -version和java -version查看Java编译器和Java解释器版本信息
如果提示The operation couldn’t be completed. Unable to locate a Java Runtime.Please visit http://www.java.comfor information on installing Java. 表示Java21卸载成功
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/81457.html