mac配置maven需统一终端、idea等所有工具的环境变量和settings.xml路径,关键步骤:①确认shell类型(zsh需改~/.zshrc),②设置m2_home与path,③修改$m2_home/conf/settings.xml指定localrepository和阿里云镜像。
mac 上配置 maven 环境变量和本地仓库,关键不是“装完就行”,而是让终端、ide(如 idea)、脚本、ci 工具都读同一套路径和配置。常见问题比如 mvn 命令能用但 idea 找不到依赖,往往就是环境变量没对齐、settings.xml 没生效、或本地仓库路径被多处覆盖导致的。
确认当前 Shell 类型,再写对配置文件
macOS Catalina(10.15)起默认 shell 是 zsh,不是 bash。如果你往 ~/.bash_profile 里写了 export,新开终端根本不会加载——这是绝大多数人第一步就踩的坑。
- 先执行
echo $SHELL,输出/bin/zsh就说明你在用 zsh,该改~/.zshrc - 打开它:
vim ~/.zshrc,在末尾添加两行(路径替换成你实际解压的 Maven 目录):export M2_HOME=/usr/local/apache-maven-3.9.2 export PATH=$PATH:$M2_HOME/bin
- 立即生效:
source ~/.zshrc - 验证:
echo $M2_HOME和mvn -v都应有正确输出
修改 settings.xml 指定本地仓库路径
默认本地仓库是 ~/.m2/repository,但这个位置容易被系统清理、磁盘空间小、或权限异常。建议显式指定一个稳定路径,比如 /Users/xxx/maven-repo。
- 找到配置文件:进入
$M2_HOME/conf/settings.xml(不是~/.m2/settings.xml,那是用户级配置,初配建议优先改全局版) - 搜索
<localrepository></localrepository>,取消注释并填入自定义路径:<localrepository>/Users/yourname/maven-repo</localrepository>
- 保存后,首次运行
mvn clean compile就会自动创建该目录并开始缓存依赖
让 IDEA 和命令行用同一套配置
IDEA 默认用 Bundled Maven(自带版本),它不读你改的 $M2_HOME/conf/settings.xml,也不认 ~/.m2/settings.xml,除非你手动指定。
- 打开 IDEA → Preferences → Build, Execution, Deployment → Build Tools → Maven
- Maven home path:选
Use specified Maven installation,指向你的/usr/local/apache-maven-3.9.2 - User settings file:点右侧文件夹图标,选
$M2_HOME/conf/settings.xml(或你已配置好的~/.m2/settings.xml) - Local repository:保持为空,让它自动从 settings.xml 读取;如果填了,反而会覆盖配置
顺手加个阿里云镜像(提速必备)
中央仓库在国外,国内拉包慢且常超时。在刚才改的 settings.xml 里加一段镜像配置,所有项目自动生效。
- 找到
<mirrors></mirrors>标签,在里面插入:<mirror><id>aliyunmaven</id><mirrorof>*</mirrorof><name>Aliyun Maven</name><url>https://maven.aliyun.com/repository/public</url></mirror>
- 注意:URL 用
https,旧教程里的http://maven.aliyun.com/...已失效 - 改完保存,下次
mvn命令就会走阿里云源











