2

私のビルドは、リリース時 (より正確には mvn javadoc:javadoc) を除いて正常に動作します。以下の ClassNotFoundException を取得します。クラスを提供する方法についてのヒントをいただければ幸いです

Caused by: java.lang.NoClassDefFoundError: org/apache/http/HttpRequest
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClassFromSelf(ClassRealm.java:386)
    at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:42)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
    at org.apache.maven.plugin.javadoc.AbstractJavadocMojo.buildJavadocOptions(AbstractJavadocMojo.java:5843)
    at org.apache.maven.plugin.javadoc.AbstractJavadocMojo.executeReport(AbstractJavadocMojo.java:1857)
    at org.apache.maven.plugin.javadoc.JavadocReport.generate(JavadocReport.java:130)
    at org.apache.maven.plugin.javadoc.JavadocReport.execute(JavadocReport.java:315)
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)
    ... 20 more
Caused by: java.lang.ClassNotFoundException: org.apache.http.HttpRequest
    at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:244)
    at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:230)
    ... 38 more
4

2 に答える 2

0

OP が で実行されていた可能性がありMaven 2.xます。したがって、解決策は、 (明らかに)Maven 3.xの最近のバージョンで作業したい場合に使用することです。結局EOLに達したので、それを使い続ける理由はありません。maven-javadoc-plugin2.9+Maven 2

maven-javadoc-pluginの新しいバージョンを使用するためのアップグレードHttpClientや、コンテナーとしての からへのMaven移行などの変更の組み合わせが原因である可能性があります。PlexusGuiceIoC

以下に、役立つチケットのリンクをいくつか示します。

于 2014-12-31T23:18:05.480 に答える
0

これは、maven の推移的な依存関係の競合の問題である可能性があります。一部の依存関係は、httpclient の 2 つの異なるバージョンに推移的に依存しています。次の方法で 1 つを除外してみてください。

<dependency>
    <groupId>groupId</groupId>
    <artifactId>artifactId</artifactId>
    <exclusions>
        <exclusion>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
        </exclusion>
    </exclusions>
</dependency>
于 2013-07-04T12:55:39.213 に答える