在 Yosemite 上找不到 Maven

maven not found on Yosemite

我正在尝试在我的 mac OSX yosemite 上下载 Maven。 我试着手动下载它,我把它写在.bash_profile

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

我也使用了 source 命令,但当我尝试执行 mvn 命令时仍然出现此错误:

-bash: mvn: 找不到命令

我尝试使用替代方案来解决问题,即:brew install maven

但问题是brew实际上是使用死链接URL下载maven,因此,我无法使用brew解决问题![​​=13=]

此外,我尝试搜索 JAVA_HOME,但我找不到它,即使我在 mac 上安装了 java 6,7 和 8。

有人可以帮我解决这个问题吗?

我尝试执行 sh mvn 并收到此错误消息:

线程中的异常 "main" java.lang.NoClassDefFoundError: org/codehaus/plexus/classworlds/launcher/Launcher 原因:java.lang.ClassNotFoundException:org.codehaus.plexus.classworlds.launcher.Launcher 在 java.net.URLClassLoader$1.run(URLClassLoader.java:202) 在 java.security.AccessController.doPrivileged(本机方法) 在 java.net.URLClassLoader.findClass(URLClassLoader.java:190) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:306) 在 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:247)

export PATH="$PATH:/usr/local/apache-maven-3.2.5/bin"

mvn 可执行文件不在 /usr/local/apache-maven-3.2.5/ 中,而是在 /usr/local/apache-maven-3.2.5/bin 子文件夹中。

  1. 检查/usr/local/apache-maven-3.2.5/bin/mvn是否确实存在
  2. 检查(例如使用 ls -l)其权限是否包含可执行 (x) 标志。使用 chmod 0755 /usr/local/apache-maven-3.2.5/bin/mvn 它们不会。
  3. 在任何情况下 /usr/local/apache-maven-3.2.5/bin/mvn 都是一个 shell 脚本,所以您可以尝试 运行 直接用 shell 来尝试: sh /usr/local/apache-maven-3.2.5/bin/mvn 看看是否可以运行确实如此。如果还是不能运行,用sh -x /usr/local/apache-maven-3.2.5/bin/mvn看到底是哪里失败了

Homebrew 更新了 Maven 公式。

使用 brew update 然后重试 brew install maven

我遇到了同样的问题,但我通过将 /bin 添加到 $PATH 解决了问题,如下所示:

export M2_HOME=/Applications/apache-maven-3.6.0/bin:$PATH
export PATH=$PATH:$M2_HOME/bin