我的Maven M2_HOME环境变量存在问题。
每次我在控制台中覆盖变量时都会说:
M2_HOME is set to an invalid directory.
Please set the M2_HOME variable in your environment to match the
location of the Maven installation
这是我的配置。
我有两个maven安装,一个用于版本3.3.9,另一个用于版本3.2.5。 我需要一段时间版本3.2.5。
所以我创建了两个额外的环境变量M2_HOME_3_3_9和M2_HOME_3_2_5以及M2_HOME变量,当然它是PATH
%M2_HOME%\bin
的一部分。
默认情况下,M2_HOME设置为%M2_HOME_3_3_9%。
如果我需要maven 3.2.5我打开控制台并发送以下命令:
SET M2_HOME=%M2_HOME_3_2_5%
在那之后maven给我上面的错误。
如果我在环境设置中将M2_HOME更改为%M2_HOME_3_2_5%启动控制台,一切正常。
关于。
答案 0 :(得分:1)
更改PATH
后,您是否还修改了M2_HOME
环境变量?
换句话说:PATH
环境变量的内容是什么?
如果可执行文件maven文件位于%M2_HOME_3_2_5%/bin
而M2_HOME
指向%M2_HOME_3_3_9%
,我猜你会遇到问题。
答案 1 :(得分:0)
您需要的唯一事情就是添加(设置)您想要在PATH中使用的maven发行版的bin文件夹。无需使用M2_HOME
等。
此外,默认情况下,存储库位于$HOME/.m2/repository
,您不应该更改它,并且最终不会更改为maven安装。不要这样做。您应该更改的settings.xml只是您自己的文件,位于$HOME/.m2/settings.xml
。您应该阻止更改分发中的文件....
答案 2 :(得分:0)
sudo nano / etc / profile
JAVA_HOME=/opt/jdk1.8.0_73
export JAVA_HOME
M2_HOME=/opt/apache-maven-3.6.0
export M2_HOME
M2=$M2_HOME/bin
export M2
PATH=$PATH:$JAVA_HOME
PATH=$PATH:$M2
export PATH
更改您正在使用的java和maven的路径,在此文件的末尾添加上述行。 然后重新启动PC并在终端中检查以下各项:
echo $JAVA_HOME
echo $M2_HOME
echo $M2
答案 3 :(得分:-1)
export %M2_HOME_3_2_5%=$HOME_3_2_5/builds/maven
export M2_HOME=%M2_HOME_3_2_5%
export M2_REPO=$M2_HOME/repository
在$ M2_HOME / conf中创建一个包含以下内容的settings.xml文件:
<settings>
<localRepository>${env.M2_HOME}/repository</localRepository>
</settings>