当我尝试运行mvn clean install -P embedded时,我收到以下错误 我之前从未与Maven合作,实际上很难理解它试图告诉我的内容。有人可以帮我解决吗?
[FATAL ERROR] org.apache.maven.plugin.clean.CleanMojo#execute() caused a linkage error (java.lang.NoClassDefFoundError) and may be out-of-date. Check the realms:
[FATAL ERROR] Plugin realm = app0.child-container[org.apache.maven.plugins:maven-clean-plugin:2.2]
urls[0] = file:/Users/andrejcek/.m2/repository/org/apache/maven/plugins/maven-clean-plugin/2.2/maven-clean-plugin-2.2.jar
urls[1] = file:/Users/andrejcek/.m2/repository/org/codehaus/plexus/plexus-utils/1.1/plexus-utils-1.1.jar
urls[2] = file:/Users/andrejcek/.m2/repository/org/apache/maven/shared/file-management/1.2/file-management-1.2.jar
urls[3] = file:/Users/andrejcek/.m2/repository/org/apache/maven/shared/maven-shared-io/1.1/maven-shared-io-1.1.jar
[FATAL ERROR] Container realm = plexus.core
urls[0] = file:/usr/share/maven/lib/maven-2.2.0-uber.jar
[INFO] ------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] org/apache/maven/shared/io/logging/MessageSink
org.apache.maven.shared.io.logging.MessageSink
[INFO] ------------------------------------------------------------------------
[INFO] Trace
java.lang.NoClassDefFoundError: org/apache/maven/shared/io/logging/MessageSink
at org.apache.maven.plugin.clean.CleanMojo.execute(CleanMojo.java:171)
at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:483)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:678)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:540)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:519)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:371)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:332)
at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:181)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:41)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)
at org.codehaus.classworlds.Launcher.main(Launcher.java:375)
Caused by: java.lang.ClassNotFoundException: org.apache.maven.shared.io.logging.MessageSink
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:315)
at org.codehaus.classworlds.RealmClassLoader.loadClassDirect(RealmClassLoader.java:195)
at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:255)
at org.codehaus.classworlds.DefaultClassRealm.loadClass(DefaultClassRealm.java:274)
at org.codehaus.classworlds.RealmClassLoader.loadClass(RealmClassLoader.java:214)
at java.lang.ClassLoader.loadClass(ClassLoader.java:250)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:398)
... 20 more
答案 0 :(得分:1)
我遇到了同样的问题,但后来我找到了非常简单的解决方案。
step1 - 从http://maven.apache.org/download.cgi下载欲望maven文件夹(我已经下载了Maven 2.2.1(Binary tar.gz))
step2 - 提取tar并将文件夹放到您想要的位置(即/ usr / lib /)
step3 - 更新你使用它的maven的路径(在我的例子中是.bashrc)
基本上问题是你的maven已损坏,你需要按照上述步骤解决它。 :)
答案 1 :(得分:0)
您的Maven安装已损坏。卸载它,重新下载maven,确认md5校验和匹配,安装它并重试。
编辑:另一种选择是您从已破坏的仓库下载了一些东西。如果重新安装maven无法解决问题,请检查您是否使用了有问题的存储库(最好还在此处报告您配置的pom依赖项)。还有cases like that。
答案 2 :(得分:0)
检查您是否正确设置了M2_HOME变量,如installation instructions中所述。