首页 文章

在OSX Mavrerick中找不到mvn命令

提问于
浏览
23

在将此标记为重复之前,我查看了这些帖子,但没有任何帮助 . 'mvn' is not recognized as an internal or external command, Getting -bash: mvn: command not foundCan'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 然后重新启动终端,仍然没有帮助 .

有人可以建议如何在终端的所有会话中提供它吗?

谢谢

4 回答

  • 46

    如果这些可能有用,请尝试以下操作

    由于您的安装适用于您安装的终端,所以 exports 都在 current bash and its child process 上工作 . 但并没有产生新的 terminals .

    如果会话结束, env 变量将丢失;使用 .bash_profile ,您可以在所有会话中使用它,因为当 bash 会话开始时,它'runs' .bashrc and .bash_profile

    现在请按照以下步骤查看是否有帮助:

    • 在正在工作的终端上输入 env | grep M2_HOME . 这应该给出类似的东西

    M2_HOME =的/ usr /本地/ Apache-行家/ Apache的行家-3.1.1

    • 输入 env | grep JAVA_HOME 应该这样给出:

    JAVA_HOME = /图书馆/的Java / JavaVirtualMachines / jdk1.7.0_40.jdk /内容/首页

    现在你有 M2_HOMEJAVA_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 .

  • 3

    这对我有用 .

    首先,我检查了M2_HOME变量是否设置为 env | grep M2_HOME . 我有 nothing .

    我知道我已经在文件夹“/usr/local/apache-maven-3.2.2”中安装了Maven,因此执行以下3个步骤解决了我的问题:

    • 设置M2_HOME env变量

    M2_HOME=/usr/local/apache-maven-3.2.2

    • 设置M2 env变量

    M2=$M2_HOME/bin

    • 更新PATH

    export PATH=$M2:$PATH

    如上所述,如果您希望自动执行该序列,可以将该序列保存在 .bash_profile 文件中 .

  • 8

    我在 macOS Sierra Version 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/loca/
    $ cd /usr/local/bin
    $ sudo ln -s ../apache-maven-3.5.3/bin/mvn mvn
    $ mvn -version
    $ which mvn
    

    Note: apache maven的版本将是您要下载的版本 .

  • 0

    安装maven的步骤:

    • http://maven.apache.org/download.cgi下载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_profile $vim ~/.bash_profile

    • 写下这两个命令: export M2_HOME=/Users/manisha/apache-maven-3.5.4 export PATH=$PATH:$M2_HOME/bin 7保存并退出vim :wq!

    • 重启终端并输入 mvn -version

相关问题