设置Maven的问题[重复]
Posted
技术标签:
【中文标题】设置Maven的问题[重复]【英文标题】:Problems setting up Maven [duplicate] 【发布时间】:2011-09-12 10:39:22 【问题描述】:我在安装 Maven 时遇到困难。
我已经按照这个设置了所有的环境变量:http://maven.apache.org/download.html
虽然我使用的是 Windows 7,但当我尝试运行命令 mvn --version
时,我得到了 mvn is not recognized as an internal or external command
等。
当我从src\bin
中运行它时,我得到了错误:
Exception in thread "main" java.lang.ClassNotFoundException: org.codehaus.plexus.classworlds.launcher.Launcher
at java.net.URLClassLoader$1.run<URLClassLoader.java:202>
at java.security.AccessController.doPrivleged(Native Method)
...etc
然后:
Could not find the main class: org.codehaus.plexus.classworlds.launcher.Launcher.
【问题讨论】:
第一个问题 (...not recognized as an internal or external command...
) 是 Windows 中的 PATH 问题。第二个问题 (...ClassNotFoundException...
) 是 Java 中的 Classpath 问题。投票结束第一个问题作为重复。解决路径问题后,再来解决其他问题。
看起来你已经安装了源文件。尝试从那里安装 Binary Files。 link 然后按照那里的描述设置环境变量。 link
【参考方案1】:
检查您是否没有 M2_HOME 环境变量。
【讨论】:
类似问题:我在 OS X 上使用 MacPorts(“port install maven3”)从 maven 2 升级到 maven 3 - 我遇到了同样的错误。删除 M2_HOME 环境变量并将其从路径中删除(在我的 ~/.bash_profile 中设置)解决了我的问题。 谢谢,我可能会添加删除 M2_HOME 变量,您需要在终端中执行:unset M2_HOME Mac 上基于 brew 的安装:检查以下目录 /usr/local/bin/ 下 mvn 的符号链接,并使用以下 export export M2_HOME="/usr/local/ 添加正确的 maven 版本地窖/maven/3.3.3/libexec" 导出 PATH=$PATH:$M2_HOME/bin【参考方案2】:我以同样的问题结束了这个问题,但是,我犯了一个基本错误,下载了 apache-maven-..*-src.zip 而不是 apache-maven- ..*-bin.zip
一旦我意识到这个错误,我一改正它就一帆风顺了。我想下载页面上的说明应该绰绰有余
【讨论】:
三年后,我做了同样的事情。感谢您的提示。【参考方案3】:安装和使用 maven 所需要做的一切:
1) 下载 maven 3. ZIP 应该没问题。安装在已知的地方;我使用 c:\tools\ 作为父目录,但您的里程可能会有所不同。
2) 将您的 PATH 设置为指向安装目录中的 bin 目录。如果 Maven 在 c:\tools\maven-3.0.3 中(因为它在我的系统上),您需要将 c:\tools\maven-3.0.3\bin 添加到 PATH:
set PATH=%PATH%;c:\tools\maven-3.0.3
您可能还想设置 MVN_HOME:
set MVN_HOME=c:\tools\maven-3.0.3
3) 启动一个新的命令外壳 (cmd.exe)。 mvn 应该可以工作;如果没有,您已经跳过了这里的某些内容,或者您的配置中有严重错误。
【讨论】:
等等……不应该是c:\tools\maven-3.0.3\bin
MVN_HOME
是正确的,但路径应该是set PATH=%PATH%;%MVN_HOME%\bin
【参考方案4】:
消隐 M2_HOME 在 Ubuntu 上对我有用。可以只测试:'export M2_HOME='
【讨论】:
奇怪,但这有效。谢谢【参考方案5】:您的第一个问题是因为您的 PATH 中没有 maven。 第二个问题是我遇到的。我的计算机上同时安装了 Maven 2 和 3,即使我从 PATH 中删除了 Maven 2 链接,它仍然会干扰我的新 Maven。
您需要删除或重命名系统变量 M2_HOME。 1.右击我的电脑->属性 2.高级系统设置 3.环境变量 4.重命名或删除M2_HOME
【讨论】:
【参考方案6】:我这样设置M2_HOME
:
export M2_HOME="~/app/apache-maven-3.1.1"
看到了同样的异常:
Exception in thread "main" java.lang.ClassNotFoundException: org.codehaus.plexus.classworlds.launcher.Launcher`.
我改为使用绝对路径,它工作了:
export M2_HOME="Users/myaccount/app/apache-maven-3.1.1"
就我而言,M2_HOME 环境变量不是问题。我认为 java 和/或 mvn 启动脚本不会扩展类路径 cmd 行参数中的波浪号。
【讨论】:
【参考方案7】:这是很久以前的问题,但最近我遇到了这个问题。就我而言,这是因为我从几个月前的先前安装中设置了 M2_HOME。我只是取消设置变量,然后就可以了。
【讨论】:
【参考方案8】:我遇到了同样的错误
在我的情况下,配置会产生错误
export M2_HOME="/home/ashoka/apache-maven-3.0.4/bin/"
PATH=$M2_HOME/bin:$PATH
工作配置
export M2_HOME="/home/ashoka/apache-maven-3.0.4/"
PATH=$M2_HOME/bin:$PATH
阿肖克库马拉
【讨论】:
【参考方案9】:“mvn 不被识别为内部或外部命令等。”意味着您尚未在 Windows 中设置环境变量。阅读全文http://maven.apache.org/download.html :-)
【讨论】:
【参考方案10】:你也安装了 maven 2 吗? 我在搜索中找到了一个链接,看看它是否有帮助 http://blogs.oracle.com/sreekanth/entry/java_lang_noclassdeffounderror_org_codehaus
并仔细检查您的环境变量,以确保您已设置文档中提到的所有变量。
对于这个错误“mvn 不是内部或外部命令”,在 'path' 环境变量中添加 src/bin 文件夹。
【讨论】:
【参考方案11】:就像 Joseph Ottinger 说的,你必须把 Maven 安装目录放到你的 PATH 环境变量或者用户变量中。您可以通过运行不带引号的命令“rundll32 sysdm.cpl,EditEnvironmentVariables”来编辑用户变量。
首先添加名为 MAVEN_HOME 的新变量,并为其赋值 Mavens 安装目录,即。 c:\tools\maven-3.0.3\ 然后编辑 PATH 变量并添加值的结尾 ;%MAVEN_HOME%\bin (注意分号)
重新登录或打开新的命令提示符后 mvn 命令应该可以正常工作。
【讨论】:
【参考方案12】:有些人似乎在将 Maven bin 文件夹添加到系统 PATH 与用户 PATH 时遇到了麻烦。您可以尝试在您的用户变量下定义您的环境,但这更像是一种解决方法而不是解决方案。
PATH=%PATH%;%JAVA_HOME%\bin;%JRE_HOME%\bin;%MAVEN_HOME%\bin
您可以使用Rapid Environment Editor 诊断这些访问错误,它会告诉您某些 PATH 位置是否无效或您无法访问。
【讨论】:
以上是关于设置Maven的问题[重复]的主要内容,如果未能解决你的问题,请参考以下文章