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

我现在已经被这个简单的问题困住了一个小时。 Maven上周工作正常,我不知道出了什么问题它给了我这个错误。 我尝试了所有调试方法以及StackOverflow和许多其他地方的所有解决方案。 我甚至尝试用M3_HOME和MAVEN_HOME替换M2_HOME路径。 没有任何效果。 我在OS X上。下面是几个maven命令的输出。 我很乐意提供更多信息

$ mvn Error: Could not find or load main class org.codehaus.plexus.classworlds.launcher.Launcher $ which mvn /Library/Maven-3.3.3/bin/mvn $ echo $M2_HOME /Library/Maven-3.3.3 $ echo $JAVA_HOME /Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home $ which java /usr/bin/java $ /Library/Java/JavaVirtualMachines/jdk1.7.0_75.jdk/Contents/Home/bin/java -version java version "1.7.0_75" Java(TM) SE Runtime Environment (build 1.7.0_75-b13) Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode) $ echo $PATH /opt/local/bin:/opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/Tomcat/bin:/Library/Maven-3.3.3/bin $ java -version java version "1.7.0_75" Java(TM) SE Runtime Environment (build 1.7.0_75-b13) Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode) $ ls -lR /Library/Maven-3.3.3 total 56 -rw-r--r--@ 1 USERNAME wheel 19091 Apr 22 04:58 LICENSE -rw-r--r--@ 1 USERNAME wheel 182 Apr 22 04:58 NOTICE -rw-r--r--@ 1 USERNAME wheel 2541 Apr 22 04:55 README.txt drwxr-xr-x@ 8 USERNAME wheel 272 Oct 14 12:24 bin drwxr-xr-x@ 3 USERNAME wheel 102 Oct 14 12:24 boot drwxr-xr-x@ 5 USERNAME wheel 170 Apr 22 04:55 conf drwxr-xr-x@ 75 USERNAME wheel 2550 Oct 14 12:24 lib /Library/Maven-3.3.3/bin: total 64 -rw-r--r--@ 1 USERNAME wheel 230 Apr 22 04:58 m2.conf -rwxr-xr-x@ 1 USERNAME wheel 7075 Apr 22 04:58 mvn -rw-r--r--@ 1 USERNAME wheel 6007 Apr 22 04:58 mvn.cmd -rwxr-xr-x@ 1 USERNAME wheel 1796 Apr 22 04:58 mvnDebug -rw-r--r--@ 1 USERNAME wheel 1513 Apr 22 04:58 mvnDebug.cmd -rwxr-xr-x@ 1 USERNAME wheel 1843 Apr 22 04:58 mvnyjp /Library/Maven-3.3.3/boot: total 104 -rw-r--r--@ 1 USERNAME wheel 52684 Aug 29 2014 plexus-classworlds-2.5.2.jar /Library/Maven-3.3.3/conf: total 32 drwxr-xr-x@ 3 USERNAME wheel 102 Apr 22 04:55 logging -rw-r--r--@ 1 USERNAME wheel 10216 Apr 22 04:55 settings.xml -rw-r--r--@ 1 USERNAME wheel 3649 Apr 22 04:55 toolchains.xml /Library/Maven-3.3.3/conf/logging: total 8 -rw-r--r--@ 1 USERNAME wheel 1126 Apr 22 04:55 simplelogger.properties /Library/Maven-3.3.3/lib: total 18656 -rw-r--r--@ 1 USERNAME wheel 136324 Jan 29 2015 aether-api-1.0.2.v20150114.jar -rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 aether-api.license -rw-r--r--@ 1 USERNAME wheel 36745 Jan 29 2015 aether-connector-basic-1.0.2.v20150114.jar -rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 aether-connector-basic.license -rw-r--r--@ 1 USERNAME wheel 172998 Jan 29 2015 aether-impl-1.0.2.v20150114.jar -rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 aether-impl.license -rw-r--r--@ 1 USERNAME wheel 30705 Jan 29 2015 aether-spi-1.0.2.v20150114.jar -rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 aether-spi.license -rw-r--r--@ 1 USERNAME wheel 25355 Jan 29 2015 aether-transport-wagon-1.0.2.v20150114.jar -rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 aether-transport-wagon.license -rw-r--r--@ 1 USERNAME wheel 146876 Jan 29 2015 aether-util-1.0.2.v20150114.jar -rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 aether-util.license -rw-r--r--@ 1 USERNAME wheel 4467 May 7 2013 aopalliance-1.0.jar -rw-r--r--@ 1 USERNAME wheel 44908 May 7 2013 cdi-api-1.0.jar -rw-r--r--@ 1 USERNAME wheel 21837 Apr 22 04:58 cdi-api.license -rw-r--r--@ 1 USERNAME wheel 41123 May 7 2013 commons-cli-1.2.jar -rw-r--r--@ 1 USERNAME wheel 173587 May 7 2013 commons-io-2.2.jar -rw-r--r--@ 1 USERNAME wheel 284220 May 7 2013 commons-lang-2.6.jar drwxr-xr-x@ 3 USERNAME wheel 102 Apr 22 04:55 ext -rw-r--r--@ 1 USERNAME wheel 2256213 Nov 1 2014 guava-18.0.jar -rw-r--r--@ 1 USERNAME wheel 2497 May 7 2013 javax.inject-1.jar -rw-r--r--@ 1 USERNAME wheel 293671 Jul 24 2013 jsoup-1.7.2.jar -rw-r--r--@ 1 USERNAME wheel 3449 Apr 22 04:58 jsoup.license -rw-r--r--@ 1 USERNAME wheel 5848 May 7 2013 jsr250-api-1.0.jar -rw-r--r--@ 1 USERNAME wheel 18116 Apr 22 04:58 jsr250-api.license -rw-r--r--@ 1 USERNAME wheel 66349 Apr 22 04:57 maven-aether-provider-3.3.3.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-aether-provider.license -rw-r--r--@ 1 USERNAME wheel 55090 Apr 22 04:56 maven-artifact-3.3.3.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-artifact.license -rw-r--r--@ 1 USERNAME wheel 14964 Apr 22 04:56 maven-builder-support-3.3.3.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-builder-support.license -rw-r--r--@ 1 USERNAME wheel 286726 Apr 22 04:58 maven-compat-3.3.3.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-compat.license -rw-r--r--@ 1 USERNAME wheel 631881 Apr 22 04:57 maven-core-3.3.3.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-core.license -rw-r--r--@ 1 USERNAME wheel 86051 Apr 22 04:58 maven-embedder-3.3.3.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-embedder.license -rw-r--r--@ 1 USERNAME wheel 160817 Apr 22 04:56 maven-model-3.3.3.jar -rw-r--r--@ 1 USERNAME wheel 176410 Apr 22 04:56 maven-model-builder-3.3.3.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-model-builder.license -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-model.license -rw-r--r--@ 1 USERNAME wheel 46099 Apr 22 04:56 maven-plugin-api-3.3.3.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-plugin-api.license -rw-r--r--@ 1 USERNAME wheel 25957 Apr 22 04:57 maven-repository-metadata-3.3.3.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-repository-metadata.license -rw-r--r--@ 1 USERNAME wheel 43032 Apr 22 04:57 maven-settings-3.3.3.jar -rw-r--r--@ 1 USERNAME wheel 43154 Apr 22 04:57 maven-settings-builder-3.3.3.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-settings-builder.license -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 maven-settings.license -rw-r--r--@ 1 USERNAME wheel 375267 Feb 20 2015 org.eclipse.sisu.inject-0.3.0.jar -rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 org.eclipse.sisu.inject.license -rw-r--r--@ 1 USERNAME wheel 205404 Feb 20 2015 org.eclipse.sisu.plexus-0.3.0.jar -rw-r--r--@ 1 USERNAME wheel 12637 Apr 22 04:58 org.eclipse.sisu.plexus.license -rw-r--r--@ 1 USERNAME wheel 13350 May 7 2013 plexus-cipher-1.7.jar -rw-r--r--@ 1 USERNAME wheel 21837 Apr 22 04:58 plexus-cipher.license -rw-r--r--@ 1 USERNAME wheel 4211 May 7 2013 plexus-component-annotations-1.5.5.jar -rw-r--r--@ 1 USERNAME wheel 62458 Oct 29 2014 plexus-interpolation-1.21.jar -rw-r--r--@ 1 USERNAME wheel 28555 May 7 2013 plexus-sec-dispatcher-1.3.jar -rw-r--r--@ 1 USERNAME wheel 21837 Apr 22 04:58 plexus-sec-dispatcher.license -rw-r--r--@ 1 USERNAME wheel 243128 Oct 29 2014 plexus-utils-3.0.20.jar -rw-r--r--@ 1 USERNAME wheel 399672 Feb 20 2015 sisu-guice-3.2.5-no_aop.jar -rw-r--r--@ 1 USERNAME wheel 26084 Jul 24 2013 slf4j-api-1.7.5.jar -rw-r--r--@ 1 USERNAME wheel 14853 Apr 22 04:58 slf4j-api.license -rw-r--r--@ 1 USERNAME wheel 10680 Aug 17 2013 slf4j-simple-1.7.5.jar -rw-r--r--@ 1 USERNAME wheel 14853 Apr 22 04:58 slf4j-simple.license -rw-r--r--@ 1 USERNAME wheel 11432 Apr 21 06:27 wagon-file-2.9.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 wagon-file.license -rw-r--r--@ 1 USERNAME wheel 2259073 Apr 21 06:32 wagon-http-2.9-shaded.jar -rw-r--r--@ 1 USERNAME wheel 11787 Apr 21 06:27 wagon-http-shared-2.9.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 wagon-http-shared.license -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 wagon-http.license -rw-r--r--@ 1 USERNAME wheel 53543 Apr 21 06:27 wagon-provider-api-2.9.jar -rw-r--r--@ 1 USERNAME wheel 11358 Apr 22 04:58 wagon-provider-api.license /Library/Maven-3.3.3/lib/ext: total 8 -rw-r--r--@ 1 USERNAME wheel 152 Apr 22 04:55 README.txt 

请删除M2_HOME作为环境变量,它已由mvn脚本设置。 您需要做的唯一事情是:在您的路径中添加apache-maven-3.xx / bin,将JAVA_HOME设置为环境变量。 因此,无需在路径中添加%JAVA_HOME%/ bin

尝试首先从/Library/Maven-3.3.3/bin/文件夹运行mvn -v以确认安装是否正确。 尝试使用xtrace info(tldp.org/LDP/Bash-Beginners-Guide/html/sect_02_03.html)运行mvn并validationMaven构建的命令行。 我假设你得到一个意想不到的classpath参数值。

为了它的价值,我有同样的错误: Could not find or load main class org.codehaus...东西,但没有任何其他信息(你会发现很多人有这个错误消息 – 但通常伴随着额外的信息如类加载失败)。

事实certificate我有一个损坏的安装,也许一些文件默默无法解压缩或其他东西。 一个rm -rf的maven目录并重新下载并解压缩修复它。

编辑:请注意,这适用于Mac用户

需要从PATH删除M2_HOME 。 默认情况下,您的PATH可能会从以下某个文件中获取(对我来说,它位于~/.profile )。

 /etc/bashrc /etc/profile ~/.bashrc ~/.bash_profile ~/.profile ~/.MacOSX/environment.plist 

它可能看起来像这样:

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

删除M2_HOME变量和任何依赖项(在示例中, M2变量使用M2_HOME ,因此删除它,然后使用$M2 )显示它。

[ 来源 ]

只是为了提供有关如何使用此文件的更多信息,您可以继续追加要包含在路径中的任何位置。

例如,如果要将/User/batman/google-sdk在路径中,则将下面的行添加到文件的末尾将附加/Users/batman/google-sdk (在您的情况下,无论文件夹的位置如何)对于PATH来说。

export PATH=$PATH:/Users/batman/google-sdk

但请确保PATH在上述行之前已经有一些信息。

对于绝对新人到maven,请确保从Maven站点下载“二进制存档”,而不是“源存档”。

删除和重新安装对我有用。

细节:

  • 我在这台Linux机器上运行maven已经有一年了。
  • Java已经从7升级到8(但也发生了其他变化)。
  • 我的M2_HOME / M3_HOME没有定义(所以清除这个不是解决方案)。
  • 在debug( bash -x mvn )中运行mvn脚本显示已明确请求丢失的jar文件。
  • 我只能找到旧版本的org.codehaus.plexus.classworlds包/模块。

由于不清楚如何独立更新org.codehaus jar,我让apt-get拉入它所需要的东西。 问题解决了。

我解决了这个问题,它对我有用:删除maven解压缩文件。 然后得到更新的。 然后重新配置路径。 因为原始文件已损坏。 使用mvn -v

在我的情况下, M2_HOME指向/usr/share/maven3 ; 但是ith应该是:

M2_HOME =的/ usr /共享/行家

在.bashrc中

根据我的经验,请检查/ bin / mvn这是一个POSIX shell脚本。 在脚本中,它首先从/ etc / mavenrc或$ HOME / .mavenrc中找到与maven相关的env。 在我的例子中,在/ etc / mavenrc中,M2_HOME env变量设置为我删除的变量,然后在我将M2_HOME设置为新的maven安装后,“mvn -v”工作。

删除旧的Maven版本并恢复较新的版本解决了我的问题。 我之前使用的是Maven 3.2.3和Java 1.8.0_65。 刚尝试用3.3.9替换早期的maven版本,对环境变量进行了更改,并且工作正常。

我做的是我重命名(在我的.bash_profile中)

 export M2_HOME=/usr/local/bin/mvn export M2=$M2_HOME/bin 

 export M3_HOME=/usr/local/bin/mvn export M2=$M3_HOME/bin 

然后使用命令(谢谢TS!)

 $ which mvn 

 $ echo $M2_HOME 

我看到两者都有不同的路径所以我将$M2_HOME路径更改为与“在哪个mvn”命令中显示的相同。 为了改变这条路径,我刚刚编辑了.bash_profile文件,其中包含变量。

下载apache maven二进制包而不是源代码,这样就可以解决以下问题:

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

重新启动eclipse为我解决了这个问题。