Macos 在OSX Mavrerick中找不到mvn命令
在将此标记为副本之前,我浏览了这些帖子,但没有任何帮助Macos 在OSX Mavrerick中找不到mvn命令,macos,bash,maven,terminal,Macos,Bash,Maven,Terminal,在将此标记为副本之前,我浏览了这些帖子,但没有任何帮助 , 有些是针对windows的,没有帮助。MacOSX上的几个人给出了建议,我试过了,但没有帮助 我所尝试的(这正是Maven所建议的): 提取分发存档,即apache-maven-3.1.1-bin.tar.gz 到您希望安装Maven 3.1.1的目录。这些说明 假设您选择了/usr/local/apachemaven。子目录 apache-maven-3.1.1将从归档文件中创建。一声令下 终端,添加M2_HOME环境变量,例
- ,
Maven
所建议的):
提取分发存档,即apache-maven-3.1.1-bin.tar.gz
到您希望安装Maven 3.1.1的目录。这些说明
假设您选择了/usr/local/apachemaven。子目录
apache-maven-3.1.1将从归档文件中创建。一声令下
终端,添加M2_HOME环境变量,例如导出
M2_HOME=/usr/local/apachemaven/apache-maven-3.1.1。添加M2
环境变量,例如导出M2=$M2\U HOME/bin。可选:添加
MAVEN_选择环境变量来指定JVM属性,例如导出
MAVEN_OPTS=“-Xms256m-Xmx512m”。可以使用此环境变量
为Maven提供额外的选项。将M2环境变量添加到
路径,例如导出路径=$M2:$path。确保JAVA_HOME设置为
JDK的位置,例如export JAVA_HOME=/usr/JAVA/jdk1.5.0_02
$JAVA_HOME/bin位于PATH环境变量中。运行mvn
--版本,以验证是否已正确安装
我在安装时使用的终端上看到,它工作正常。我没有这个问题。但是当我在一个新的终端上尝试时,我发现命令找不到
我还向我的.bashrc
添加了export PATH=$M2
,我做了source
,然后重新启动了终端,但仍然没有任何帮助
有人能建议如何在终端的所有会话中使用它吗
谢谢如果有帮助,请尝试以下方法:
由于您的安装工作在您安装的终端上,因此您所做的所有导出工作都是在当前bash及其子进程上进行的。但不会衍生到新的终端
env
如果会话关闭,变量将丢失;使用.bash\u配置文件
,您可以使其在所有会话中都可用,因为当bash
会话启动时,它会“运行”其.bashrc和.bash\u配置文件
现在按照以下步骤进行操作,看看是否有帮助:
在正在工作的终端上键入env | grep M2_HOME
。这应该会有类似的效果
M2_HOME=/usr/local/apache-maven/apache-maven-3.1.1
键入env | grep JAVA_HOME
应给出如下内容:
JAVA_HOME=/Library/JAVA/JavaVirtualMachines/jdk1.7.0_40.jdk/Contents/HOME
现在您有了M2\u HOME
和JAVA\u HOME
的路径
如果您只是执行ls/usr/local/apache-maven/apache-maven-3.1.1/bin
,您将在那里看到mvn
二进制文件。
现在您所要做的就是每次使用PATH指向该位置。由于bash
搜索path
中提到的所有目录路径,因此它将找到mvn
现在打开.bash\u profile
,如果没有,就创建一个
vi~/.bash_简介
添加以下内容:
#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\u profile
。此步骤执行.bash\u profile
文件中的命令,现在就可以开始了
打开一个新的终端,键入应该可以工作的mvn
这是对我有用的东西
首先,我检查了M2_HOME变量是否设置为env | grep M2_HOME
。我什么都没有
我知道我在文件夹“/usr/local/apache-Maven-3.2.2”中安装了Maven,因此执行以下3个步骤为我解决了问题:
设置M2_HOME环境变量
M2_HOME=/usr/local/apache-maven-3.2.2
设置M2环境变量
M2=$M2\u HOME/bin
更新路径
export PATH=$M2:$PATH
如上所述,如果希望自动执行,您可以将该序列保存在.bash\u profile
文件中。上述解决方案很好,但它们需要~/.bash\u profile/usr/local/bin
已在$PATH中,可以通过执行echo$PATH
进行确认。并运行以下命令-
$ 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版本。安装maven的步骤:
从下载maven文件
$tar xvf apache-maven-3.5.4-bin.tar.gz
将apache文件夹复制到所需位置$cp-R apache-maven-3.5.4/Users/locals
转到apache目录$cd/Users/locals/apache-maven-3.5.4/
创建.bash_配置文件$vim~/.bash_配置文件
编写以下两个命令:
导出M2_HOME=/Users/manisha/apache-maven-3.5.4
导出路径=$PATH:$M2\u HOME/bin
7保存并退出vim:wq强>
重新启动终端并键入mvn-版本
我遵循brain storm的指示,仍然没有得到不同的结果——任何新的终端窗口都无法识别mvn命令。我不知道为什么,但是把声明分成更小的部分。bash_配置文件起作用了。据我所知,我基本上在做和他一样的事情。以下是我的.bash_配置文件中的不同之处:
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_221.jdk/Contents/Home
export PATH JAVA_HOME
J2=$JAVA_HOME/bin
export PATH J2
M2_HOME=/usr/local/apache-maven/apache-maven-2.2.1
export PATH M2_HOME
M2=$M2_HOME/bin
export PATH M2
我遇到了同样的问题,我尝试了以上所有方法,但都没有解决我的问题。幸运的是,我这样解决了这个问题:
echo $SHELL
输出
如果你在osx mavericks上,我相信mvn
已经被mvn3
所取代@ChristianF:是的,我在mavericks上,但我尝试了mvn3
,但仍然没有找到命令。问题是它与用于安装的终端一起工作(在遵循maven指出的上述步骤之后),但不是跨终端继承的尝试将路径添加到.bash_配置文件,然后运行comm
/bin/zsh
OR
/bin/bash
If it showing "bash" in output. You have to add env properties in .bashrc file (.bash_profile i did not tried, you can try) or else
It is showing 'zsh' in output. You have to add env properties in .zshrc file, if not exist already you create one no issue.