我遇到了无法设置M2_HOME
和PATH
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版本。