前言
MAVEN_HOME
和M2_HOME
都是maven的环境变量,要配置哪个,与maven版本有关,我在实操过程中遇到相关的问题,现记录如下。
MAVEN_HOME
和M2_HOME
的区别
MAVEN_HOME
和 M2_HOME
本质上是同一个作用的环境变量,它们的区别源于历史版本演进。以下是具体对比:
环境变量 | 适用场景 | 生命周期 |
---|---|---|
M2_HOME | Maven 2.x 时代的官方推荐名称 | 已废弃(但部分工具兼容) |
MAVEN_HOME | Maven 3.x官方标准名称 | 当前推荐 |
存在的问题
部分工具可能依旧使用M2_HOME
来确定maven的主目录,例如IDEA,在仅配置了MAVEN_HOME
的情况下,无法自动找到对应的目录:
建议
为了兼容各工具的使用,即使是使用的maven3,也建议将M2_HOME
环境变量配置上。
推测实际原因可能是,虽然你用的是maven3,但是工具在还没有找到对应的maven主目录时,无法确定你用的是具体哪个版本的maven,而它可能默认只使用M2_HOME
来获取目录。
原创,转发请注明。