在将此标记为重复之前,我查看了这些帖子,但没有任何帮助。 'mvn' is not recognized as an internal or external command, Getting -bash: mvn: command not found,Can't access mvn command from command line?
有些是特定的窗口,没有帮助。他们中的一些人在Mac OS X上提出了建议,我试过但没有帮助。
我尝试了什么(这正是Maven
建议的):
将分发存档(即apache-maven-3.1.1-bin.tar.gz)解压缩到要安装Maven 3.1.1的目录。这些说明假设您选择了/ usr / local / apache-maven。将从存档创建子目录apache-maven-3.1.1。在命令终端中,添加M2_HOME环境变量,例如, export M2_HOME = / usr / local / apache-maven / apache-maven-3.1.1。添加M2环境变量,例如出口M2 = $ M2_HOME / bin。可选:添加MAVEN_OPTS环境变量以指定JVM属性,例如导出MAVEN_OPTS =“ - Xms256m -Xmx512m”。此环境变量可用于为Maven提供额外选项。将M2环境变量添加到您的路径中,例如export PATH = $ M2:$ PATH。确保将JAVA_HOME设置为JDK的位置,例如导出JAVA_HOME = / usr / java / jdk1.5.0_02并且$ JAVA_HOME / bin位于PATH环境变量中。运行mvn --version以验证它是否已正确安装。
我在用于安装的terminal
上看到它,它工作正常。我没有这个问题。但当我尝试新的terminal
时,我得到了command not found
。
我还将export PATH=$M2
添加到我的.bashrc
,我做了source
,然后重新启动终端,仍然没有帮助。
有人可以建议如何在终端的所有会话中提供它吗?
谢谢
如果这些可能有用,请尝试以下操作
由于您的安装在您安装的终端上运行,所以您所做的所有exports
都在current bash and its child process
上工作。但并没有产生新的terminals
。
如果会话结束,env
变量将丢失;使用.bash_profile
,你可以在所有会话中使用它,因为当bash
会话开始时,它'运行'它的.bashrc and .bash_profile
现在请按照以下步骤查看是否有帮助:
env | grep M2_HOME
。这应该给出类似的东西
M2_HOME =的/ usr /本地/ Apache-行家/ Apache的行家-3.1.1env | grep JAVA_HOME
应该这样:
JAVA_HOME = /图书馆/的Java / JavaVirtualMachines / jdk1.7.0_40.jdk /内容/首页现在你有了M2_HOME
和JAVA_HOME
的路径。
如果你只是做ls /usr/local/apache-maven/apache-maven-3.1.1/bin
,你会在那里看到mvn
二进制文件。您现在要做的就是每次使用PATH指向此位置。因为bash
搜索PATH
中提到的所有目录路径,它会找到mvn
。
.bash_profile
,如果你没有一个只是创建一个
vi~ / .bash_profile添加以下内容:
#set JAVA_HOME
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/Home
export JAVA_HOME
M2_HOME=/usr/local/apache-maven/apache-maven-3.1.1
export M2_HOME
PATH=$PATH:$JAVA_HOME/bin:$M2_HOME/bin
export PATH
source ~/.bash_profile
。这个步骤执行.bash_profile
文件中的命令,你现在好了。mvn
。这对我有用。
首先,我检查了M2_HOME变量是否设置为env | grep M2_HOME
。我什么都没有。
我知道我已经在文件夹“/usr/local/apache-maven-3.2.2”中安装了Maven,因此执行以下3个步骤解决了我的问题:
M2_HOME=/usr/local/apache-maven-3.2.2
M2=$M2_HOME/bin
export PATH=$M2:$PATH
如上所述,如果您希望自动执行该序列,可以将该序列保存在.bash_profile
文件中。
我在macOS Sierra版本10.12.6上做到了这一点。上面的解决方案很好,但它们需要〜/ .bash_profile。 /usr/local/bin
已经在$ PATH中,可以通过echo $PATH
来确认。 Download maven并运行以下命令 -
$ cd ~/Downloads
$ tar xvf apache-maven-3.5.3-bin.tar.gz
$ mv apache-maven-3.5.3 /usr/local/
$ cd /usr/local/bin
$ sudo ln -s ../apache-maven-3.5.3/bin/mvn mvn
$ mvn -version
$ which mvn
注意:apache maven的版本将是您要下载的版本。
编辑:这也适用于macOS Mojave版本10.14.14。
安装maven的步骤: