【问题标题】:Error trying to install Maven on OSX Lion尝试在 OSX Lion 上安装 Maven 时出错
【发布时间】:2011-12-17 20:26:05
【问题描述】:

[更新] 只是一个白痴的错误。解决方案见结尾。

我正在尝试在我的 2011 Macbook Pro 上安装 Maven。不幸的是,我根本不懂 Java,但我试图通过一些 Java 内置的工具来混淆我的方式,它们暗示使用 Maven 来安装它们会让事情变得更容易。

我在这里遵循了 Maven 安装说明:http://maven.apache.org/download.html#Installation

我...

1) 下载的 Maven, 2)解压, 3)把它放在/usr/local/apache-maven-3.0.3/ 4)添加

export M2_HOME=/usr/local/apache-maven/apache-maven-3.0.3`
export M2=$M2_HOME/bin`
export PATH=$M2:$PATH`

到我的.zshrc 文件

5) 输入mvn --version 并返回:

Exception in thread "main" java.lang.NoClassDefFoundError: org/codehaus/plexus/classworlds/launcher/Launcher
Caused by: java.lang.ClassNotFoundException: org.codehaus.plexus.classworlds.launcher.Launcher
  at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

我发现了几篇博客文章 (http://steveswinsburg.wordpress.com/2011/03/09/java-update-broke-my-maven/) 描述了如何修复类似的错误,但是那些将 Maven 2 升级到 Maven 3 似乎是个问题。Afaik,我什至从来没有 Maven 2。尽管如此,我还是按照那篇文章中的说明进行操作,但仍然遇到完全相同的错误。

请帮忙!

还有人知道初学者了解“Java 生态系统”(即 Maven、类路径等)如何工作的好资源吗?我在 udemy.com 上尝试了一些“学习 Java”视频,但它们都是关于 Java 编程语法的,而我遇到的大多数问题都是关于如何让现有的 Java 应用程序首先运行地点,或如何遵循基本的行话填充文档。

[解决方案]

总结...白痴错误。

在遵循 Maven 安装说明的同时,我剪切并粘贴了以下行“在命令终端中,添加 M2_HOME 环境变量,例如 export M2_HOME=/usr/local/apache-maven/apache-maven-3.0.3 ",没有意识到我实际上已经在/usr/local/apache-maven-3.0.3 中安装了我的解压缩文件。

再一次,渣脑通过拒绝自动读取明显冗余的信息来“节省时间”,所以我没有注意到 apache 的示例预期我已经将安装嵌套在第二个文件夹中。

修复 .zshrc 行以读取 `export M2_HOME=/usr/local/apache-maven-3.0.3' 解决了问题。

感谢 ivantod 指出我的错误。

【问题讨论】:

  • 首先,您在第 3) 点和第 4) 点中列出的 Maven 路径并不相同。
  • 而且……这就是问题所在。故事的寓意是 1)不要盲目地从安装说明中剪切粘贴路径,2)不要当白痴。
  • Ivantod...如果您需要代表,请随时将您的回复复制为官方答案。否则我会总结一下我自己做错了什么并结束这个问题。谢谢!
  • 没关系,继续总结:)

标签: java maven installation environment-variables osx-lion


【解决方案1】:

Mac OS X Lion 上已经安装了 maven @/usr/share/maven

你只需要在终端输入java来安装java并将~/.profile中的JAVA_HOME导出到/System/Library/Frameworks/JavaVM.framework/Home。您可以选择设置其他参数,例如MAVEN_OPTSJAVA_OPTS

【讨论】: