如何在Maven Javadoc插件中禁用Javadoc警告?

时间:2016-09-21 12:17:13

标签: maven javadoc maven-javadoc-plugin

我正在使用Maven Javadoc插件。它输出如下警告:

[ERROR] /home/monperrus/spoon/src/main/java/spoon/visitor/CtVisitor.java:144:
      warning: no @param for <T>

如何将这些警告显示为[WARNING](而不是混淆[ERROR])?

6 个答案:

答案 0 :(得分:17)

  

如何将这些警告显示为[警告](而不是令人困惑的[错误])?如何在Maven中完全禁用Javadoc警告?

如果您正在讨论Java 8中引入的javadoc lint警告,那么您应该能够执行以下操作。根据您使用的javadoc插件的版本,有多种方法可以指定参数。

<plugins>
   <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-javadoc-plugin</artifactId>
      <configuration>
         <additionalparam>-Xdoclint:none</additionalparam>
         <additionalOptions>-Xdoclint:none</additionalOptions>
         <additionalJOption>-Xdoclint:none</additionalJOption>
      </configuration>
   </plugin>
</plugins>

请参阅此good discussion about turning off doclint

如果您只想摆脱丢失的jacadocs警告,那么您可以使用:

<configuration>
   <additionalparam>-Xdoclint:all -Xdoclint:-missing</additionalparam>
   <additionalOptions>-Xdoclint:all -Xdoclint:-missing</additionalOptions>
   <additionalJOptions>
     <additionalJOption>-Xdoclint:all</additionalJOption>
     <additionalJOption>-Xdoclint:-missing</additionalJOption>
   </additionalJOptions>
</configuration>

答案 1 :(得分:12)

maven-javadoc-plugin版本2.9以后,设置additionalparam,似乎没有用。需要设置的新选项是additionalJOption(请参阅documentation)。这里有一个例子:

<plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <configuration>
            <additionalJOption>-Xdoclint:none</additionalJOption>
        </configuration>
   </plugin>

请注意,警告仍显示在控制台中,但不会出现令人困惑的错误&#34; [错误]&#34;前缀。

答案 2 :(得分:7)

您也可以从命令行禁用它,以防您想要在本地禁止但不编码。

mvn clean install -Dadditionalparam=-Xdoclint:none
正如Spring Monkey指出的那样,在较新的版本中,您可能必须将其作为

传递
mvn clean install -DadditionalJOption=-Xdoclint:none

答案 3 :(得分:4)

maven-javadoc-plugin版本3.0.0起,您可以使用doclint配置参数。如果只想禁用“丢失”警告,请使用all,-missing

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

有关更多信息,请参见the doclint parameter documentation

答案 4 :(得分:1)

编译所有答案,然后添加其他内容,我们有以下内容。

要配置Maven项目,应将其添加到pom文件中:

<plugins>
   <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-javadoc-plugin</artifactId>
      <configuration>
         <additionalparam>-Xdoclint:none</additionalparam>
         <additionalJOption>-Xdoclint:none</additionalOptions>
      </configuration>
   </plugin>
</plugins>

对于Maven 2.9+,您需要additionalJOption,在此之前,您需要additionalparam。您可以在Maven 2.9+上安装additionalparam,因为它不会引起错误,但不能使其正常工作。我尚未测试过在较早版本的Maven中使用additionalJOption

要从命令行对其进行配置,您应该传递此参数:

mvn <goals> -Dadditionalparam=-Xdoclint:none -DadditionalJOption=-Xdoclint:none

要在您的Shell环境上对其进行配置,这样它就可以每次都应用于每个项目而无需执行其他任何操作,请将此行添加到您的Shell初始化中(~/.bashrc或在Mac ~/.bash_profile上,或您的Shell使用的其他任何方式上):

export JAVA_TOOL_OPTIONS="-Dadditionalparam=-Xdoclint:none -DadditionalJOption=-Xdoclint:none"

或者,如果您有JAVA_TOOL_OPTIONS,请在其后附加这些参数。

答案 5 :(得分:1)

从v3.0.0起,添加了新的doclint配置选项以配置文档插入。这可以用来禁止显示这些警告。

<plugins>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>3.1.1</version>
    <configuration>
      <doclint>none</doclint>  <!-- Turnoff all checks -->
    </configuration>
    <executions>
      <execution>
        <id>attach-javadocs</id>
        <goals>
          <goal>jar</goal>
        </goals>
      </execution>
    </executions>
  </plugin>
</plugins>

对于

<plugins>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <configuration>
      <additionalparam>-Xdoclint:none</additionalparam>  <!-- Turnoff all checks -->
    </configuration>
    <!-- executions.... -->
  </plugin>
</plugins>