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

Java Maven错误:无法找到或加载主类org.codehaus.plexus.classworlds.launcher.launcher,java,maven,Java,Maven,我已经被这个简单的问题困扰了一个小时了。Maven上周工作得很好,我不知道出了什么问题,它给了我这个错误。我尝试了所有的调试方法,以及在StackOverflow和许多其他地方找到的所有解决方案。我甚至尝试用M3_HOME和MAVEN_HOME替换M2_HOME path。什么都没用。我在OSX上。下面是几个maven命令的输出。我很乐意提供更多信息 $ mvn Error: Could not find or load main class org.codehaus.plexus.classw

我已经被这个简单的问题困扰了一个小时了。Maven上周工作得很好,我不知道出了什么问题,它给了我这个错误。我尝试了所有的调试方法,以及在StackOverflow和许多其他地方找到的所有解决方案。我甚至尝试用M3_HOME和MAVEN_HOME替换M2_HOME path。什么都没用。我在OSX上。下面是几个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.x.x/bin到您的路径,将JAVA_HOME设置为环境 变量因此,无需将%JAVA\u HOME%/bin添加到路径中

首先尝试从/Library/Maven-3.3.3/bin/文件夹运行mvn-v 确认安装是否正确。尝试使用xtrace信息运行mvn (tldp.org/LDP/Bash初学者指南/html/sect_02_03.html)并验证 由Maven建立的命令行。我想你会得到一个意想不到的结果 类路径参数值


值得一提的是,我犯了同样的错误:
找不到或加载主类org.codehaus…
东西,但没有任何其他信息(你会发现很多人有这个错误消息,但通常伴随着额外的信息,比如类加载失败)


原来我有一个损坏的安装,可能是一些文件无法解压缩或其他什么。一个
rm-rf
的maven目录,并重新下载和解压修复了它。

我解决了这个问题,它对我有效: 删除maven解压文件。 然后换一个新的。 然后重新规划路径。 因为原始文件被破坏了。

编辑:注意这是为Mac用户准备的

需要从
路径中删除
M2\u HOME
。默认情况下,您的
路径
可能是从以下文件中选择的(对我来说,它位于
~/.profile

它可能看起来像这样:

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:/Users/batman/googlesdk


但是要确保
路径
在上述行之前已经有一些信息。

在我的例子中
M2_HOME
指向
/usr/share/maven3
;但它应该是:

M2_HOME=/usr/share/maven


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

我所做的是(在我的.bash_档案中)将

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


我看到两者中有不同的路径,所以我将
$M2_HOME
路径更改为与“Which mvn”命令中显示的路径相同。为了更改此路径,我刚刚编辑了.bash_配置文件,其中包含变量。

对于maven的全新用户,请确保从maven站点下载“二进制存档”,而不是“源存档”。重新启动eclipse为我解决了问题

拆卸和重新安装对我来说很有效

详情:

  • 我在这台Linux机器上运行maven已经有一年了
  • Java已经从7升级到8(但也发生了其他变化)
  • 我的M2\u HOME/M3\u HOME没有定义(因此清除这不是一个解决方案)
  • 在debug(
    bash-xmvn
    )中运行
    mvn
    脚本表明丢失的jar文件被显式请求
  • 我只能找到较旧版本的
    org.codehaus.plexus.classworlds
    包/模块

由于不清楚如何独立更新
org.codehaus
jars,我让
apt-get
获取它所需要的。问题解决。

删除旧Maven版本并恢复新版本解决了我的问题。 我之前在Java1.8.0@中使用了Maven 3.2.3。
刚刚尝试用3.3.9替换早期的maven版本,对环境变量进行了更改,它就成功了。

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

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


似乎这个问题现在出现在openjdk docker中(我使用circleci/openjdk:8-jdk)


请参见

发布
ls-lR/Library/Maven-3.3.3的结果
什么是
javac-version
打印到您的控制台?@JorgeCampos javac version是:
javac 1.7.0_75
。请删除
M2_HOME
作为环境变量,它已经由mvn脚本设置。唯一需要做的事情是:将
apache-maven-3.x.x/bin
添加到路径中,将
JAVA\u HOME
设置为环境变量。因此,无需将
%JAVA\u HOME%/bin
添加到您的路径。请首先从
/Library/Maven-3.3.3/bin/
文件夹运行
mvn-v
,以确认安装是否正确。尝试使用xtrace info()运行mvn,并验证Maven构建的命令行。我假设您得到一个意外的classpath参数值。请参阅我关于如何为MAC执行此操作的回答:您已保存
export M2_HOME=/Applications/apache-maven-3.2.3
export M2=$M2_HOME/bin
export PATH=$M2:$PATH
export M2_HOME=/usr/local/bin/mvn
export M2=$M2_HOME/bin
export M3_HOME=/usr/local/bin/mvn
export M2=$M3_HOME/bin
$ which mvn
$ echo $M2_HOME