Java Maven错误:无法找到或加载主类org.codehaus.plexus.classworlds.launcher.launcher
我已在Windows 7上安装了最新的Java Maven错误:无法找到或加载主类org.codehaus.plexus.classworlds.launcher.launcher,java,windows,maven,Java,Windows,Maven,我已在Windows 7上安装了最新的maven-3.0.4: 安装详情如下: 安装路径: 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 -vers
maven-3.0.4
:
安装详情如下:安装路径:
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
这是我的电脑上安装的maven上的唯一版本,许多博客上给出的关于删除以前的M2\u HOME
环境变量的解决方案无效
我已经阅读并尝试了博客上给出的所有解决方案,例如:
- ,
- ,
- ,
- ,
但还是没能做到。在这整件事中我可能遗漏了什么?提前谢谢 您应该将M2_住宅的位置更改为以下位置:
set M2_HOME=C:\apache-maven-3.0.4\apache-maven
此外,JDK的安装看起来更像是JRE而不是JDK。对于Maven来说,你需要的是JDK,而不是JRE。除了@khmarbaise所指出的,我认为你的JAVA_主页输入错误。如果安装在默认位置,那么jdk和1.7.0_04之间不应该有“-”(连字符)。是的
JAVA_HOME C:\Program Files\Java\jdk1.7.0_04
我遇到了同样的问题,并且能够通过仔细重做环境变量来解决它:
- M2_之家
- 平方米
- 爪哇之家酒店
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]
在两个不同的Ubuntu 12.04安装上都有这个问题,尽管安装是由apt get完成的。问题是你的家 固定为:
export M2_HOME=/usr/share/maven
我也有同样的问题。我有一个Windows xp框,当我在命令行提示符下键入
mvn-version
时,我收到了可怕的错误消息
"Exception in thread "main" java.lang.NoClassDefFoundError: org/codehaus/plexus/classworlds/launcher/Launcher"
我确认我的M2\u HOME
变量设置为在pc上安装Maven的路径,并且echo%path%
确认Maven在我的路径中
当我偶然发现我的解决方案时,我已经寻找了几个小时的解决方案(我之所以说我的解决方案,是因为我知道这可能不是每个遇到相同错误的人的解决方案)
我复制了分配给我的M2\u HOME
变量的路径。我打开一个cmd窗口,键入cd并粘贴从我的M2_主页
变量获得的路径。在这一点上,我知道路径是正确的,因为路径显示在窗口中。在这一点上,我输入了dir命令,令我惊讶的是,我得到了找不到的错误文件
我通过资源管理器找到了那个路径,果然有文件存在。我注意到文件夹已淡出,但我可以访问它们并查看每个文件夹中的文件(我在电脑上拥有管理员权限)。我查看了Maven的父文件夹的属性,发现隐藏框被选中。我删除了检查并应用了dir命令,并再次尝试了dir命令
接下来,我再次尝试了mvn–version
命令,但这次我得到了预期的结果
C:\>mvn -version
Apache Maven 3.0.3 (r1075438; 2011-02-28 11:31:09-0600)
Maven home: C:\Program Files\apache-maven-3.0.3
Java version: 1.5.0_16, vendor: Sun Microsystems Inc.
Java home: C:\Java\jdk1.5.0_16\jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows xp", version: "5.1", arch: "x86", family: "windows"
最后,我创建了一个jar和war文件,我的web应用程序在本地Tomcat上成功运行
我希望这能对你们中的一些人有所帮助。听起来像是您根据路径信息安装(提取)了源文件,而不是二进制文件。试着安装二进制文件,然后按照其他海报的答案进行操作。好吧,我遇到了这个问题,在看到这篇文章,特别是khmarbaise的答案后,我注意到
M2_HOME
是
D:\workspace\apache-maven-3.1.0-bin\apache-maven-3.1.0\bin
然后我把它改成了
D:\workspace\apache-maven-3.1.0-bin\apache-maven-3.1.0
我想提到的是,我使用的是Windows7(x64)这是设置Maven时常见的问题。 您只需执行以下操作:-
C:\Documents and Settings\ADMIN>mvn——版本
输出:-
ApacheMaven 2.0.11(r909250;2010-02-12 11:25:50+0530) Java版本:1.6.0_22 Java主页:C:\Program Files\Java\jdk1.6.0\U 22\jre 默认区域设置:en_US,平台编码:Cp1252 操作系统名称:“windows xp”版本:“5.1”拱门:“x86”系列:“windows”
谢谢。即使问题已得到回答,我想补充一点,如果您遇到上述错误,请确保您已下载了二进制文件 只有当您是高级用户并且知道如何处理源文件时,才应下载源文件
我有相当一部分人下载了错误的文件,高年级和低年级的人对于其他可能遇到这种情况的人,不要忘记检查~/.mavenrc的M2\u HOME或JAVA\u HOME设置。我也遇到了这个问题,找到了这篇文章。对于Maven3,将我的环境变量名从M2_HOME更改为M3_HOME就成功了。我在Mac上运行OSX10.9和JDK1.7。希望这有帮助
注意:如果已经设置,请删除M2_HOME。例如:
unset M2\u HOME
我在mac OSX上遇到了类似的问题。经过一系列的反复尝试,我终于解决了这个问题
我的~/.bash\u配置文件
如下所示
export M2_HOME=/Users/xyz/maven-3.x/bin
export PATH=$PATH:$M2_HOME
当我尝试从终端回显M2_HOME
时,它向我显示了正确的路径,但当我尝试启动任何maven命令,如mvn clean
或mvn install
,它总是给出相同的问题
无法找到或加载主类org.codehaus.plexus.classworlds.launcher.launcher
我通过改变我的M2\HOM解决了这个问题
export M2_HOME=/Users/xyz/maven-3.x
export PATH=$PATH:$M2_HOME/bin
alternatives --config java
There are 2 programs which provide 'java'.
Selection Command
-----------------------------------------------
* 1 /usr/lib/jvm/jre-1.5.0-gcj/bin/java
+ 2 /usr/java/jdk1.7.0_67/bin/java
+ '[' -z '' ']'
+ '[' -f /etc/mavenrc ']'
+ '[' -f /home/picsa/.mavenrc ']'
+ cygwin=true
+ darwin=false
+ MAVEN_PROJECTBASEDIR='C:\peter\bin'
+ export MAVEN_PROJECTBASEDIR
+ MAVEN_CMD_LINE_ARGS=' '
+ export MAVEN_CMD_LINE_ARGS
+ exec '/cygdrive/c/Program Files/Java/jdk1.8.0_66/bin/java' -classpath 'C:\peter/boot/plexus-classworlds-*.jar' '-Dclassworlds.conf=C:\peter/bin/m2.conf' '-Dmaven.home=C:\peter' '-Dmaven.multiModuleProjectDirectory=C:\peter\bin' org.codehaus.plexus.classworlds.launcher.Launcher
Fehler: Hauptklasse org.codehaus.plexus.classworlds.launcher.Launcher konnte nicht gefunden oder geladen werden
$ ls -al /etc/alternatives/java
lrwxrwxrwx 1 root root 43 Aug 24 04:54 /etc/alternatives/java -> /usr/lib/jvm/java-11-openjdk-amd64/bin/java
$ java --version
openjdk 10.0.2 2018-07-17
OpenJDK Runtime Environment (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.3)
OpenJDK 64-Bit Server VM (build 10.0.2+13-Ubuntu-1ubuntu0.18.04.3, mixed mode)
JAVA_HOME=/opt/jdk-11.0.1 mvn
M2_HOME=/Users/macbook/apache-maven-3.6.1 //Set where maven is
M2=$M2_HOME/bin //Set home as bin
export PATH=$M2:$PATH //Place the new path
mvn -version