如何设置M2_HOME和PATH env.在OS X上为Maven永久设置变量,以防止它们在重新启动Terminal后被



我遇到了无法设置M2_HOMEPATH env的问题。在OS X上为Maven永久设置变量。每次终端重新启动时,它们都会被删除。如何处理?

终端重新启动后,我有:

echo $PATH
/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin

$M2_HOME

编辑:我按照官方Maven安装页面的步骤创建了~/。Bash_profile包含以下内容

export M2_HOME=$(/usr/local/Cellar/maven/3.2.2/libexec)
export M2=$M2_HOME/bin
export PATH=$M2:$PATH
export JAVA_HOME=$(/usr/libexec/java_home)
export PATH=$JAVA_HOME/bin

但它根本不起作用。echo $M2_HOME或其他变量给出空行

您需要在bash_profile文件中添加maven路径

在终端中输入如下:

nano ~/.bash_profile

在打开的窗口中添加路径为:

export M2_HOME=/usr/local/apache-maven/apache-maven-3.1.1
export PATH=$PATH:$M2_HOME/bin

按CTRL_X,然后按Y保存。按回车。

终端类型:

source ~/.bash_profile
echo $M2_HOME

您将看到路径似乎已设置。

这里有一篇关于如何使用brew为MAVNE设置HOME的好文章:

https://wilsonmar.github.io/maven-on-macos/

安装最新版本:

brew update
brew install maven
mvn -version
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T03:58:13-04:00)
Maven home: /usr/local/Cellar/maven/3.5.2/libexec
Java version: 1.8.0_25, vendor: Oracle Corporation
Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "mac os x", version: "10.11.6", arch: "x86_64", family: "mac"

确认路径:

用刚刚安装的版本替换3.5.2版本:

cd /usr/local/Cellar/maven/3.5.2/libexec/bin
ls

mvn文件应该被列出:

m2.conf     mvn      mvnDebug mvnyjp

使用文本编辑器打开,用atom或vim替换subl(代替Sublime):

cd $HOME
subl .bash_profile

在export PATH=下添加以下内容,将版本(3.5.2)更改为上面显示的内容:

export M2_HOME=/usr/local/Cellar/maven/3.5.2/libexec
export M2=$M2_HOME/bin
export PATH=$PATH:$M2_HOME/bin

我只是让它与众不同。我将apache-maven-3.2.2-bin.tar.gz解压到/usr/share/java/apache-maven-3.2.2中,并在/usr/share中创建如下链接:

lrwxr-xr-x    1 root   wheel    34 Jun 29 00:38 maven -> /usr/share/java/apache-maven-3.1.1

并在我的.profile文件(我的主文件夹)中添加/更改以下行

PATH=/usr/share/maven/bin:$PATH 

这使我有机会通过更改上面的链接来更改底层Maven版本。

最新更新