Javadocタグが不完全な場合、MavenがJava 8で機能しない


312

私はMavenを使用しているので、不完全なJavadocタグ(たとえば、欠落しているパラメーター)があるローカルリポジトリプロジェクトにビルドしてインストールすることができました。

ただし、Java 8(1.8.0-ea-b90)に移行したので、Mavenはドキュメントタグの欠落に厳格であり、Javadocがないプロジェクトをビルドまたはインストールしようとすると、Javadocの問題に関連する多くのJavadocエラーが表示されます「完璧」。ローカルリポジトリにコンパイルしてインストールしようとしているプロジェクトの一部は、私が制御できないサードパーティのプロジェクトです。したがって、これらのすべてのプロジェクトですべてのJavadocを修正するという回避策は、私のシナリオでは実行可能ではないようです。

これはmvn clean package install、プロジェクトで実行したときに表示される出力の一部です。

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 9.026s
[INFO] Finished at: Mon Apr 08 21:06:17 CEST 2013
[INFO] Final Memory: 27M/437M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.9:jar (attach-javadocs) on project jpc: MavenReportException: Error while creating archive:
[ERROR] Exit code: 1 - /Users/sergioc/Documents/workspaces/heal/jpc/src/main/java/org/jpc/engine/prolog/PrologDatabase.java:10: error: @param name not found
[ERROR] * @param terms the terms to assert
[ERROR] ^
[ERROR] /Users/sergioc/Documents/workspaces/heal/jpc/src/main/java/org/jpc/engine/prolog/PrologDatabase.java:11: warning: no description for @return
[ERROR] * @return
[ERROR] ^

Javadoc Mavenプラグインは、私のPOMで次のように構成されています。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.9</version>
    <executions>
        <execution>
            <id>attach-javadocs</id>
            <goals>
                <goal>jar</goal>
            </goals>
        </execution>
    </executions>
</plugin>

前に言ったように、Java 7に戻ると、すべてが正常に機能しています。これは、Java 8で実行されているMavenに関連するバグですか?Java 8で動作させるにはどうすればよいですか(つまり、プロジェクトのJavadocをビルドして、そのコードをローカルリポジトリにインストールできますか)。OSXでMaven 3.0.3と3.0.5の両方でテストしました。

更新:

<failOnError>false</failOnError>(Martinに感謝)でJavadocプラグイン構成を変更した場合:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.9</version>
    <executions>
        <execution>
            <id>attach-javadocs</id>
            <goals>
                <goal>jar</goal>
            </goals>
        </execution>
    </executions>
</plugin>

次に、プロジェクトがローカルリポジトリにインストールされます。ただし、Javadoc JARはまだ生成されていません。

この新しい構成でコンソールに表示される出力の一部は次のとおりです。

[エラー] MavenReportException:アーカイブの作成中にエラーが発生しました:終了コード:1-/Users/....java:18:警告:no @param ...コマンドライン:/ Library / Java / Home / bin / javadoc @options @パッケージ

'/ Users / sergioc / Documents / workspaces / heal / minitoolbox / target / apidocs'ディレクトリにある生成されたJavadocファイルを参照してください。

org.apache.maven.plugin.javadoc.AbstractJavadocMojo.executeJavadocCommandLine(AbstractJavadocMojo.java:5043)at org.apache.maven.plugin.javadoc.AbstractJavadocMojo.executeReport(AbstractJavadocMojo.java:1990)at org.apache.maven.plugin .javadoc.JavadocJar.execute(JavadocJar.java:181)at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:101)at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java :209)org.apache.maache.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)at org.apache。 org.apache.maven.lifecycle.internal.LifecycleModuleBuilderのmaven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)。buildProject(LifecycleModuleBuilder.java:59)at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161) org.apache.maven.DefaultMaven.execute(DefaultMaven.java:156)at org.apache.maven.cli.MavenCli.execute(MavenCli.java)にあるorg.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:320)に:537)org.apache.maven.cli.MavenCli.doMain(MavenCli.java:196)at org.apache.maven.cli.MavenCli.main(MavenCli.java:141)at sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブメソッド)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method。org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:290)at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:230)のinvoke(Method.java:491) org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:409)org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:352)で

ソースのビルド、プロジェクトのインストール、およびJavadoc JARの生成方法について、Java 7で動作していたのと同じように、1つのステップで回避策はありますか?


こんにちは@ 75inchpianist、私は質問を更新しました。実際にはエラーです(驚くことに、生成された出力でわかるように、エラーの最後の行は警告を表しています)。プロジェクトは私のローカルリポジトリにインストールされていないため、単純な警告とは見なされません:(
Sergio

GoogleJuiceの場合:JavaDocコメントに大きな矢印があったため、エラー「error:bad use '>'」が発生しました
Drew Stephens

1
多分それは誰かのために役立つでしょう:検査Ctrl + Alt + Shift + i「宣言にJavaDocの問題があります」を実行することにより、IntelliJでこのすべての不完全なタグを簡単に見つけることができます
Sergey Ponomarev

1
これはmavenではなく、Java 8プログラムで大幅に厳しくなったjavadocプログラムです。
ThorbjørnRavn Andersen 2017

回答:


388

最善の解決策は、javadocエラーを修正することです。何らかの理由で不可能である場合(つまり、自動生成されたソースコード)、このチェックを無効にすることができます。

DocLintはJava 8の新機能で、次のように要約されています。

開発サイクルの初期にJavadocコメントのエラーを検出する手段を提供し、ソースコードに簡単にリンクできるようにします。

これはデフォルトで有効になっており、Javadocsを生成する前に多くのチェックを実行します。このスレッドで指定されているように、Java 8ではこれをオフにする必要があります。これをMaven構成に追加する必要があります。

<profiles>
  <profile>
    <id>java8-doclint-disabled</id>
    <activation>
      <jdk>[1.8,)</jdk>
    </activation>
    <properties>
      <javadoc.opts>-Xdoclint:none</javadoc.opts>
    </properties>
  </profile>
</profiles>
<build>
  <plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>2.9</version>
        <executions>
            <execution>
                <id>attach-javadocs</id>
                <goals>
                    <goal>jar</goal>
                </goals>
                <configuration>
                    <additionalparam>${javadoc.opts}</additionalparam>
                </configuration>
            </execution>
        </executions>
    </plugin>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-site-plugin</artifactId>
        <version>3.3</version>
        <configuration>
          <reportPlugins>
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-javadoc-plugin</artifactId>
              <configuration>
                <additionalparam>${javadoc.opts}</additionalparam>
              </configuration>
            </plugin>
          </reportPlugins>
        </configuration>
      </plugin>
   </plugins>
</build>

maven-javadoc-plugin 3.0.0+の場合: 置き換え

<additionalparam>-Xdoclint:none</additionalparam>

<doclint>none</doclint>

18
JDK 8 および JDK 7でこれを機能させる方法はありますか?JDK 7 javadocではこのオプションを認識しないため、失敗します。
Feuermurmel 2014

8
この答えは質問はここで尋ねたが、私が最初にpeterhの答えをチェックするためにアドバイス将来の訪問者に希望:stackoverflow.com/a/34809831/1180785を(この問題を打つほとんどの人が唯一の修正に場所のほんの一握りを持って、それが良いですので、チェックを無効にするよりも修正してください!)
Dave

8
maven-javadoc-pluginの場合は、を使用します<doclint>none</doclint>maven.apache.org/plugins/maven-javadoc-plugin/…を
coolersport 2017

11
また、maven-javadoc-plugin 3.0.0以降、<additionalparam/>に置き換えられてい<additionalOptions/>ます。issues.apache.org/jira/browse/MJAVADOC-475
fdelsertを

1
そのとおりです。maven 2からmaven 3への移行中に、このプラグインタグをレポートタグに含めず、直接pluginManagement(pom.xml)に含めることを忘れないでください
dimeros

97

Java 8とJava 7の両方で機能する最も簡単な方法は、ビルドでプロファイルを使用することです。

<profiles>
  <profile>
    <id>doclint-java8-disable</id>
    <activation>
      <jdk>[1.8,)</jdk>
    </activation>

    <build>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-javadoc-plugin</artifactId>
          <configuration>
            <additionalparam>-Xdoclint:none</additionalparam>
          </configuration>
        </plugin>
      </plugins>
    </build>
  </profile>
</profiles>

1
最良のソリューションは、おそらくあなたのソリューションと以下に提供されるZappの間のハイブリッドでしょう。このままにしておくと、mvn site:siteコマンドは引き続きクラッシュします。グローバルプロパティを設定する1.8 jdkによってアクティブ化されるプロファイルを作成する必要があります。
Max Nad

64

使用しているJavaのバージョンに関係なく、doclintの警告を無視することを知っている最も簡潔な方法は次のとおりです。わずかな変更を加えて、複数のプロファイルでプラグイン構成を複製する必要はありません。

<profiles>
  <profile>
    <id>doclint-java8-disable</id>
    <activation>
      <jdk>[1.8,)</jdk>
    </activation>
    <properties>
      <javadoc.opts>-Xdoclint:none</javadoc.opts>
    </properties>
  </profile>
</profiles>

<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-javadoc-plugin</artifactId>
      <version>2.9.1</version>
      <executions>
        <execution>
          <id>attach-javadocs</id> <!-- The actual id should be apparent from maven output -->
          <configuration>
            <additionalparam>${javadoc.opts}</additionalparam>
          </configuration>
        </execution>
      </executions>
    </plugin>
    ...
  </plugins>
</build>

oracle / open jdk 6、7、8、11でテスト済み。


1
そして、それは具体的にどこに置くべきですか?
クリアライト19/02/03

1
@clearlight、両方build、およびprofilesはmavenのトップレベルのブロックpom.xmlです。maven.apache.org/pom.html#Build
OliverGondža2019

ありがとう。私は最終的にそれを発見しましたが、それをこの回答に関連付けるのは良いことです。
クリアライト

38

pomファイルのグローバルプロパティセクションに追加します。

<project>
    ...
    <properties>
        <additionalparam>-Xdoclint:none</additionalparam>
    </properties>

他の回答でここに提供されている一般的な解決策(プラグインセクションにそのプロパティを追加)は、何らかの理由で機能しませんでした。グローバルに設定することによってのみ、javadoc jarを正常に構築できました。


1
これは私のために働いた唯一の解決策です。私もここで答えを読みます:blog.joda.org/2014/02/turning-off-doclint-in-jdk-8-javadoc.html
acvcu

37

任意のJavaバージョンで機能する最も短いソリューション:

<profiles>
    <profile>
        <id>disable-java8-doclint</id>
        <activation>
            <jdk>[1.8,)</jdk>
        </activation>
        <properties>
            <additionalparam>-Xdoclint:none</additionalparam>
        </properties>
    </profile>
</profiles>

それをPOMに追加するだけでよいのです。

これは基本的に@ankonの回答@zappの回答です。


maven-javadoc-plugin 3.0.0ユーザーの場合:

交換する

<additionalparam>-Xdoclint:none</additionalparam>

沿って

<doclint>none</doclint>


それは私にとって最良の解決策です。ボットjava 7とjava 8で動作しますが、動作方法は一種の魔法です。このパラメーター「additionalParam」はプラグインjavadocにどのように追加されますか(他には追加されません)
pdem

1
@pdem追加パラメーターは、Javadocプラグインではなく、Mavenに追加されます。このソリューションは、プラグインを明示的に使用しているかどうかに関係なく機能します。
フレッドPorciúncula16年

2
maven-javadoc-plugin 3.0.0以降<additionalJOption>-Xdoclint:none</additionalJOption><doclint>none</doclint>プロパティまたはプロパティに追加する必要があります<properties>
セルジ

はい、JDK 8関連のプロファイルを追加し、<doclint> none </ doclint>を設定すると問題が解決します。JDK 7で生成されたのと同じjavadoc jarを生成します。ありがとうございます。
Saurabhcdt

1
明確にできますか:maven-javadoc-plugin 3.0.0以降では、単に指定した場合<doclint>none</doclint>(JDKバージョンベースのアクティベーションなし)、1.8未満のJDKでも失敗するか、maven-javadoc-pluginが自動的に検出するかこのdoclintオプションは現在のバージョンのJavaでサポートされていますか?
Garret Wilson、

31

少なくとも長期的には、DocLintをオフにするだけで良い解決策になるとは思いません。Javadocがもう少し厳しくなっているのは良いことなので、ビルドの問題を修正する正しい方法は、根本的な問題修正することです。はい、最終的にそれらのソースコードファイルを修正する必要があります。

以下は、以前に回避できる可能性のある注意事項です。

  • 不正なHTML(たとえば、終了タグの欠落、エスケープされていないブラケットなど)
  • 無効{@link }です。(のような同様のタグについても同様です@see
  • 無効な@author値。これは以前は受け入れられて@author John <john.doe@mine.com>いましたが、ブラケットがエスケープされていないため、現在は受け入れられていません。
  • JavadocのHTMLテーブルには、要約またはキャプションが必要になりました。説明については、この質問を参照してください。

ソースコードファイルを修正し、Javadocが失敗せずにビルドできるようになるまで、Javadocをビルドし続ける必要があります。面倒です。ただし、プロジェクトをDocLintレベルに上げたときは個人的に気に入っています。これは、作成するJavadocが実際に意図したとおりであることを確信できるためです。

もちろん、たとえばwsimportなどのコードジェネレーターからのものなど、自分で作成していないソースコードでJavadocを生成する場合には問題があります。オラクルが実際にJDK8をリリースする前にJDK8準拠のための独自のツールを準備しなかったのは奇妙です。そうです、それは、Java 9までは固定されません。この特定の場合にのみ、このページの他の箇所で説明されているように、DocLintをオフにすることをお勧めします。


1
つまり、生成されたコードについては、javadocプラグインの構成セクションにexcludePackageNamesセクションを追加することで、特定のパッケージのコードを処理しないようにプラグインに指示するだけで十分です。maven.apache.org/plugins/maven-javadoc-plugin/examples/…を
ニュートピア

@Newtopian。いい視点ね。ただし、私の場合wsimport、Javadocの一部になるために、生成されたコードが実際に必要でした。
peterh

これらの問題に遭遇する多くの人がどこかにMaven依存関係を持つ見慣れないオープンソースコードを構築しようとしており、それがどのように機能するかわからないため、根本的な原因に対処する簡単な方法がないため、それは言うよりもはるかに簡単です。コンテキストについて近視が多すぎます。人々は答えの範囲をより一般化し、修正方法についてより具体的に提供する必要があります。
クリアライト

30

maven-javadoc-plugin構成のみをオーバーライドしても、mvn site(リリース段階などで)使用される問題は修正されません。これが私がしなければならなかったことです:

<profile>
  <id>doclint-java8-disable</id>
  <activation>
    <jdk>[1.8,)</jdk>
  </activation>
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <configuration>
          <additionalparam>-Xdoclint:none</additionalparam>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-site-plugin</artifactId>
        <version>3.3</version>
        <configuration>
          <reportPlugins>
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-javadoc-plugin</artifactId>
              <configuration>
                <additionalparam>-Xdoclint:none</additionalparam>
              </configuration>
            </plugin>
          </reportPlugins>
        </configuration>
      </plugin>
    </plugins>
  </build>
</profile>

3
サイトプラグインのアクティブ化にこの設定がないと、release:prepareが正常に機能しているときにrelease:performが失敗するため、これは重要なポイントです。これを見つけて修正するのは非常に煩わしい問題です。
Peter N. Steinmetz 2015

注の構成そのmaven-javadoc-plugin経由<reportPlugins>のセクションmaven-site-pluginはお勧めしません Mavenの3の最近のバージョンのために
マーティン大声

@MartinHöllerでは、リリースのエラーを解決する方法:mavene-javadoc-plugin:3.0.1に関連するステージを適切に実行する方法は?
Vitalii Diravka 2018

@VitaliiDiravkaエラーによって異なります...これについては別の質問をしてください。
MartinHöller18年

22

failOnErrorプロパティ(プラグインのドキュメントを参照)をfalse次のように設定してみてください。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.9</version>
    <executions>
        <execution>
            <id>attach-javadocs</id>
            <goals>
                <goal>jar</goal>
            </goals>
            <configuration>
              <failOnError>false</failOnError>
            </configuration>
        </execution>
    </executions>
</plugin>

ドキュメントからわかるように、デフォルト値はtrueです。


@Martinのアイデアをありがとう。そのプロパティがあれば、少なくともプロジェクトをビルドしてインストールできますが、Java doc jarがまだありません(Mavenセントラルにデプロイするために必要です)。実験の詳細で質問を更新しました。
セルジオ

これは私にとって最も十分な答えでした。javadocsがまだ不完全な進行中の開発中にビルドをテストしたかっただけです。
ZachSand

17

mavenコマンドを実行するために使用されるJREのバージョンに依存するためDocLint、pom.xmlでデフォルトで無効にしたくないと思うでしょう。

したがって、コマンドラインからスイッチを使用できます-Dadditionalparam=-Xdoclint:none

例: mvn clean install -Dadditionalparam=-Xdoclint:none


3
これはJenkinsでも使用できるため、特に便利です。「システムの構成」の下にある「グローバルMAVEN_OPTS」をに設定する-Dadditionalparam=-Xdoclint:noneと、すべてのビルドがJava 8で動作します
Wilfred Hughes

mvn org.apache.maven.plugins:maven-javadoc-plugin:3.1.0:jar -DadditionalJOption=-Xdoclint:none-
うまくいき

10

maven-javadoc-pluginの最新バージョン3.0.0で構成プロパティ名が変更されました。

したがって、<additionalparam>は機能しません。したがって、以下のように変更する必要があります。

   <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-javadoc-plugin</artifactId>
      <version>3.0.0</version>
      <configuration>
         <doclint>none</doclint>
      </configuration>
  </plugin>

参照してくださいdoclintここにドキュメントを:maven.apache.org/plugins/maven-javadoc-plugin/...
ピーター・W

2月19日にgithubソースからOpenGrokをビルドするためにそれを解決しました。パッチがpom.xmlプロジェクトのsrc / buildディレクトリに入ることに言及する必要があります。私の場合、私がしなければならなかったのは、検索しmaven-javadoc-pluginて、<configuration></configuration>既存のブロックに移動して追加することだけ<doclint>none</doclint>でした。これがすべてわかったら簡単ですが、ここでのコンテキストは、OpenGrokの別のバグを修正しようとしていることと、これまでにMavenを使用したことがなく、単に理解するために別のサブプロジェクトに再帰する必要がないことです。クイックフィックスの適用方法を説明します。
clearlight

4

他の答えに洞察を加えたい

私の場合

-Xdoclint:none

うまくいきませんでした。

まず、私のプロジェクトでは、javadocはまったく必要ありませんでした。一部の必要なプラグインのみがビルド時に依存していました。

だから、私の問題を解決する最も簡単な方法は:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <configuration>
        <skip>true</skip>
    </configuration>
</plugin>

4

Mavenの-javadocによってプラグイン3.0.0のとおり、あなたは使用されている必要がありますadditionalJOptionを追加のJavadocオプションを設定するには、あなたが無効にdoclintへのJavadocをご希望の場合は、次のプロパティを追加する必要があります。

<properties>
    ...
    <additionalJOption>-Xdoclint:none</additionalJOption>
    ...
<properties>

また、maven-javadoc-pluginのバージョンを3.0.0以降と記載する必要があります。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>3.0.0</version>    
</plugin>

3

だから、私がしなかった数時間を節約し、うまくいかないようであればこれを試してください:

 <additionalJOption>-Xdoclint:none</additionalJOption>

新しいバージョンではタグが変更されています。



時には-Xdoclintそれだけでは十分ではありませんが、追加の引数が必要です。新しいバージョンのはそれをmaven-javadoc-plugin提供additionalJOptionsし、古いバージョンはそれを提供しません。回避策は次のとおりです。<additionalJOption>"-Xdoclint:none" "--allow-script-in-comments"</additionalJOption>引用符は重要です。それ以外の場合、プラグインは引用符を追加し、2つではなく1つの引数のみを想定するため、wrong argsエラーが発生します。
ThorstenSchöning2018年

前者はWindowsでのみ機能し、代わりにLinuxで機能しますjavadoc: error - Illegal package name: ""-Xdoclint:none" "--allow-script-in-comments""。外側の引用符はロギングステートメントによって追加され、シェルには存在しません。問題は、Windowsではjavadocがによって実行されcmd.exe、1つの大きな文字列をコマンドラインとして解析しadditionalJOption、意図したとおりにを分割することです。Linuxでは、引数は個別に直接プロセスadditionalJOptionに渡され、1つの引数として渡されるため、エラーが発生します。
ThorstenSchöning19年

によるとProcess Monitorcmd.exeは使用されていません。ほとんどの場合、Javaは1つの大きなコマンドラインを作成しCreateProcess、それをに渡して、Windowsで意図したとおりに解析されるようにします。
ThorstenSchöning19年

3

以下に追加

JAVA_TOOL_OPTIONS=-DadditionalJOption=-Xdoclint:none

ジェンキンスの仕事に:

構成>ビルド環境>ビルドプロセスに環境変数を挿入>プロパティコンテンツ

Jenkins Mavenによるコード構築の問題を解決しました:-)


これはmaven-javadoc-plugin 2.4で機能しますが、2.5以降(3.0.0まで)、エラーが発生します:「終了コード:1-javadoc:エラー-無効なフラグ:-Xdoclint:none」。したがって、解決策は脆弱です。
Akom、

1
これをmvn release:perform構文で使用する場合は、にする必要がありますmvn release:perform -Darguments="-Dmaven.javadoc.skip=true"
PatS 2018

2

これが役立つかどうかはわかりませんがoozie-4.2.0バージョンでまったく同じ問題に最近直面しました。上記の回答を読んだ後、コマンドラインからmavenオプションを追加したところ、うまくいきました。ここで共有するだけです。

私はJava 1.8.0_77を使用していますが、Java 1.7では試していません

bin / mkdistro.sh -DskipTests -Dmaven.javadoc.opts = '-Xdoclint:-html'


1

不足@paramしている@returnタグやタグを無視するには、missing doclintグループを無効にするだけで十分です。このようにして、Javadocはより高いレベルと構文の問題がないかチェックされます。

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>3.0.0</version>
        <configuration>
            <doclint>all,-missing</doclint>
        </configuration>
    </plugin>

これはプラグインバージョン3.0以降用であることに注意してください。


0

パーティーには少し遅れましたが、回避策も検索せざるを得ず、ここまでたどり着きました。

これは私のために働くものです:-

export JAVA_TOOL_OPTIONS=-DadditionalJOption=-Xdoclint:none

そして、それはMavenの必要がないこと、それについてなどニースの事あなたのMavenのビルド、どのLinuxディストリビューションのビルドを開始する設定ファイルの変更を-私は私の目的はの束再構築するためにあったようにそれを行うことができなかったのCentOS rpmパッケージを、そうしなければなりませんでした本当に深く行きます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.