Mac下zsh环境变量必须写入~/.zshrc才能每次打开终端自动生效;若误改.bash_profile或未执行source ~/.zshrc,则会导致java、mvn等命令找不到或版本错误。

Mac 下用 zsh 时,环境变量必须写进 ~/.zshrc 才能每次打开终端都自动生效。改错文件(比如误改 .bash_profile)或漏掉关键步骤,都会导致命令找不到、Java 版本不对、Maven 不识别等问题。
先确认你确实在用 zsh
打开终端,运行:
echo $SHELL
如果输出是 /bin/zsh,那就对了;如果是 /bin/bash,当前 shell 就不是 zsh,.zshrc 不会被加载——这时得先切换 shell 或改对应配置文件。
编辑 ~/.zshrc 文件
推荐三种方式,任选其一:
-
nano(新手友好):执行
nano ~/.zshrc,光标移到末尾,按i进入编辑,写完按Ctrl+O → 回车 → Ctrl+X -
vim(高效但需注意操作):执行
vim ~/.zshrc,先按i进入插入模式,编辑完按Esc,再输:wq回车保存退出 -
VS Code 图形编辑:确保已安装
code命令,运行code ~/.zshrc,直接编辑保存即可
添加环境变量的正确写法
在文件末尾添加,不要插在开头或中间,避免被覆盖。常用格式如下:
-
设置 JAVA_HOME(推荐动态获取):
export JAVA_HOME=$(/usr/libexec/java_home -v 17)(指定 JDK 17)或export JAVA_HOME=$(/usr/libexec/java_home)(自动选最新) -
更新 PATH(新路径放最前):
export PATH=$JAVA_HOME/bin:$PATH(顺序不能反,否则会优先调用系统自带的 java) -
添加 Homebrew 路径(Apple Silicon Mac):
export PATH="/opt/homebrew/bin:$PATH" -
添加 Maven 路径:
export M2_HOME=/usr/local/apache-maven-3.9.2,再加export PATH=$M2_HOME/bin:$PATH
让修改立刻生效并验证
编辑完必须执行:
source ~/.zshrc
然后验证是否成功:
- 检查变量值:
echo $JAVA_HOME或echo $M2_HOME - 检查 PATH 是否包含新路径:
echo $PATH | grep homebrew或echo $PATH | grep maven - 确认命令可执行:
java -version、mvn -v、which java—— 三者显示的路径应一致


















