错误:在构buildMaven 3.0.4时无法find或加载主类org.codehaus.classworlds.Launcher

我用apt-get install maven2来安装maven2.2.1 。 为了编译hadoop 2.1.0源程序,我需要升级maven版本,但是不能再次使用apt-get ,因为maven2.1.0是lib中的最新版本。

我从官方网站下载了tar apache-maven-3.0.5-bin.tar.gz ,在path/usr/local运行tar apache-maven-3.0.5-bin.tar.gz ,并把apache-maven链接apache-maven-3.0.5

 lrwxrwxrwx 1 root root 18 Dec 8 11:26 apache-maven -> apache-maven-3.0.5 drwxr-xr-x 6 root root 1024 Dec 8 11:12 apache-maven-3.0.5 export the order in the terminal like this: export M2_HOME=/usr/local/apache-maven export PATH=$PATH:$M2_HOME/bin 

input命令“导出”来标识:

 ............................................. declare -x M2_HOME="/usr/local/apache-maven" declare -x MANDATORY_PATH="/usr/share/gconf/ubuntu.mandatory.path" declare -x OLDPWD="/usr" declare -x PATH="/usr/lib/lightdm/lightdm:/usr/local/java/latest/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/apache-maven/bin" 

所有的迹象显示maven 3.0.5已经成功configuration,但是当我input

mvn -version

在terminal,它显示这样的错误:

 Error: Could not find or load main class org.codehaus.classworlds.Launcher 

如果我改变一个新的terminal并inputmvn -version ,它会显示:

 administrator@ubuntu:~$ mvn -version Apache Maven 2.2.1 (rdebian-8) Java version: 1.7.0_45 Java home: /usr/local/java/jdk1.7.0_45/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux" version: "3.5.0-17-generic" arch: "amd64" Family: "unix" 

它每次都发生,虽然我已经卸载maven 2.2.1运行:

sudo apt-get remove --purge maven

我不知道为什么? 我还没有完全卸载?

Solutions Collecting From Web of "错误:在构buildMaven 3.0.4时无法find或加载主类org.codehaus.classworlds.Launcher"

下面的答案(设置M3_HOME而不是M2_HOME)解决了我的问题http://www.johnlabarge.com/post/33156663109/dreaded-maven-error-could-not-find-or-load-main-class

安装maven3和jdk1.7后,我的Mac上出现了这个小问题。 这是什么解决了我的问题:

1)从路径中删除M2_HOME变量。

2)将M3_HOME变量添加到maven 3安装的路径中。

以下是有趣的部分:我使用符号链接进行版本控制。 M2_HOME和M3_HOME的值是相同的。 两者都是/ Developer / Maven。 因此,看起来名称M2_HOME取代M3_HOME是实际导致问题的原因。 我把它作为一个练习(我可以回来)从源头上找到问题。

我也有这个错误。 事实证明,我忘记重新启动我的外壳。

一旦我关闭终端并再次打开,错误不会回来,Maven的工作。

我会推荐一个全新的maven安装。 首先,从系统中删除所有maven版本的所有安装

$ sudo apt-get remove maven

接下来,不要从包管理器下载,而要从官方的Apache网站下载。 我会建议获取最新版本的Maven(3.1.X),并将其解压缩到您拥有读/写权限的目录中。

$ tar -xvf apache-maven-3.1.1.tar.gz

最后更新为maven设置的所有符号链接和主变量。 您可以选择定义环境变量。

  1. /etc/environment – >由于显而易见的原因,有些人不推荐设置全局变量。
  2. /etc/bashrc – >我个人使用这个来导出任何我想要的环境变量。

我在Windows 8面临同样的问题,但在我的情况下,如maven目录,例如apache-maven-3.3.3被隐藏。

从apache-maven-3.3.3目录中删除隐藏的选项后为我工作。