Maven错误:无法找到或加载主类org.codehaus.plexus.classworlds.launcher.Launcher

问题

我已经安装了最新的269888838Windows 7:
安装细节如下:
安装路径:

C:\apache-maven-3.0.4

环境变量是:

M2_HOME C:\apache-maven-3.0.4\apache-maven\src  
JAVA_HOME C:\Program Files\Java\jdk-1.7.0_04

添加的路径变量是:

%M2_HOME%\bin;%JAVA_HOME%\bin;

在命令窗口中,它显示如下:

C:\>java -version  
java version "1.7.0_04"  
Java(TM) SE Runtime Environment (build 1.7.0_04-b22)  
Java HotSpot(TM) Client VM (build 23.0-b21, mixed mode, sharing)  
C:\>mvn -version  
Error: Could not find or load main class org.codehaus.plexus.classworlds.launcher.Launcher

这是我的PC上安装的maven上唯一的版本,许多博客上提到的解决方案是指删除之前的M2_HOME环境变量无效。

我已经阅读并尝试了博客中提供的所有解决方案,例如:

  • oracle博客,
  • stackoverflow问题,
  • 另一个堆栈问题,
  • 一些博客,

但仍然无法达到目的。在这件事中我可能会缺少什么?提前致谢。


#1 热门回答(122 赞)

我也遇到了这个问题,并发现这个篇。对于Maven3,将我的环境变量名称从M2_HOME更改为M3_HOME就可以了。我在使用JDK 1.7运行OSX 10.9的Mac上。希望这可以帮助。

注意:如果已经设置,请删除M2_HOME。例如:unset M2_HOME


#2 热门回答(60 赞)

我遇到了同样的问题,并且能够通过仔细重做环境变量来解决它:

  • M2_HOME
  • M2
  • JAVA_HOME

另外,我把它们全部改成系统Variables,而不是像Maven指令那样的用户变量。当你

echo %Path%

确保你可以看到%M2%和%JAVA_HOME%变量完全展开,即:

C:\Users\afairchild>echo %Path%
C:\Program Files\Apache Software Foundation\apache-maven-3.0.4\bin;C:\Program Files\Java\jdk1.7.0_09\bin; [etc]

#3 热门回答(47 赞)

即使问题得到解答,我想补充一点,如果你收到上述错误,请确保已下载二进制文件

只有在你是高级用户且你知道如何处理源文件时才应下载源文件。

我有相当多的人下载错误的文件,老年人和青少年