下载 && 安装
去 Oracle官网: https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html 下载
找到 macOS 对应的一行:
点击下载后,会要求你先使用Oracle账号登录(没有的话就得先用邮箱注册一个)。
下载到的安装包为.dmg
格式
双击安装(dmg包的安装方法可以百度)。
安装成功后,在 左上角apple–>系统偏好设置 面板中可以看到,多了一个Java。
安装路径 && 环境变量
我的是 /System/Volumes/Data/Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home/
看到这个熟悉的目录,下一步该做什么显而易见。
要配置的环境变量内容:
export JAVA_HOME=/System/Volumes/Data/Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home/
export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
export PATH=$JAVA_HOME:$PATH
环境变量写入 && 使生效
# 将环境变量写入配置文件,保存
vi ~/.zshrc
# 生效
source ~/.zshrc
测试
以上命令的文本内容如下:
leung@wuyujin ~ %
leung@wuyujin ~ % vi ~/.zshrc
leung@wuyujin ~ %
leung@wuyujin ~ % more ~/.zshrc
# alias list
alias l="ls -G "
alias ll="ls -alG "
# JDK
export JAVA_HOME=/System/Volumes/Data/Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home/
export CLASSPATH=.:$JAVA_HOME\lib:$JAVA_HOME\jre\lib
export PATH=$JAVA_HOME:$PATH
leung@wuyujin ~ %
leung@wuyujin ~ % touch ~/.zshrc
leung@wuyujin ~ %
leung@wuyujin ~ % echo $JAVA_HOME
/System/Volumes/Data/Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home/
leung@wuyujin ~ % echo $CLASSPATH
.:/System/Volumes/Data/Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home/lib:/System/Volumes/Data/Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home/jrelib
leung@wuyujin ~ % echo $PATH
/System/Volumes/Data/Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home/:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Apple/usr/bin
leung@wuyujin ~ % which java
/usr/bin/java
leung@wuyujin ~ % which javac
/usr/bin/javac
leung@wuyujin ~ % java -version
java version "1.8.0_291"
Java(TM) SE Runtime Environment (build 1.8.0_291-b10)
Java HotSpot(TM) 64-Bit Server VM (build 25.291-b10, mixed mode)
leung@wuyujin ~ % javac -version
javac 1.8.0_291
leung@wuyujin ~ %
可以看到 JAVA_HOME
和 CLASSPATH
都成功地被配置。
但有一点,当前使用的java
以及javac
是在/usr/bin/
目录下的,而非我们配置的JAVA_HOME
下。
leung@wuyujin ~ % which java
/usr/bin/java
leung@wuyujin ~ % which javac
/usr/bin/javac
不过看版本是和刚才下载安装的版本相同的。
非解压的安装方式,会将程序的启动程序自动“链接”到/usr/bin/
目录下。
其中/usr/bin/
表示 User Share Resource / Binary
即 用户共享的可执行程序
。