1

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
4

3 に答える 3

1

私は同じ問題に直面しましたが、後で非常に簡単な解決策を見つけました。

step1 - http://maven.apache.org/download.cgiから欲望の maven フォルダーをダウンロードします (Maven 2.2.1 (Binary tar.gz) をダウンロードしました)

ステップ 2 - tar を抽出し、フォルダーを目的の場所 (例: /usr/lib/) に配置します。

step3 - 使用した maven のパスを更新します (私の場合は .bashrc です)

基本的に問題は、maven が破損していることであり、上記の手順に従って解決する必要があります。:)

于 2014-02-04T09:31:33.600 に答える
0

インストール手順で説明されているように、M2_HOME 変数が正しく設定されていることを確認してください。

于 2012-08-21T10:54:30.747 に答える
0

Maven のインストールが破損しています。アンインストールし、maven を再ダウンロードし、md5 チェックサムが一致することを確認し、インストールして再試行します。

(同様の問題スレッド)

編集:別の代替手段は、壊れたリポジトリから何かをダウンロードしたことです。Maven を再インストールしても問題が解決しない場合は、問題のあるリポジトリを使用しているかどうかを確認してください (できれば、構成済みの pom 依存関係もここで報告してください)。そのようなケースもありました。

于 2012-08-21T10:45:53.757 に答える