gpt4 book ai didi

java - 如何使 Maven 构建(目标站点)因 Javadoc 警告而失败?

转载 作者:搜寻专家 更新时间:2023-11-01 02:22:00 24 4
gpt4 key购买 nike

我正在构建我的 Maven 项目,目标是 site。输出中有 Javadoc 警告。在这种情况下,我的 Maven 构建必须失败。有办法吗?

这是我的 POM 的代码片段(我使用的是 Maven 3.3):

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.5</version>
<configuration>
<generateReports>true</generateReports>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.10.3</version>
<configuration>
<show>private</show>
<failOnError>true</failOnError>
</configuration>
</plugin>

最佳答案

maven-javadoc-plugin 无法配置为在警告时构建失败(仅在参数 failOnError 出现错误时)。

您真正想要的是使用 maven-checkstyle插入。这是负责检查您的代码是否符合给定预定义样式的插件。在这种情况下,风格是 Javadoc 必须存在并且不能有警告。因此,像这样配置 Checkstyle 插件:

<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.17</version>
<reportSets>
<reportSet>
<reports>
<report>checkstyle</report>
</reports>
</reportSet>
</reportSets>
<configuration>
<failsOnError>true</failsOnError>
<configLocation>checkstyle.xml</configLocation>
</configuration>
</plugin>

它引用了一个checkstyle.xml(相对于项目基目录)。要检查 Javadoc,您可以使用以下简单的 checkstyle 配置文件:

<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
"-//Puppy Crawl//DTD Check Configuration 1.2//EN"
"http://www.puppycrawl.com/dtds/configuration_1_2.dtd">

<module name="Checker">
<module name="TreeWalker">
<module name="JavadocMethod"/>
<module name="JavadocType"/>
<module name="JavadocVariable"/>
<module name="JavadocStyle"/>
</module>
</module>

这将使构建因任何 Javadoc 警告而失败。 Javadoc 模块 are highly configurable ;上面的示例配置将检查每个方法、每个类型和每个变量的 Javadoc 及其正确性。

例如,您可以通过设置 scope 将其限制为仅限 public 方法和 public 字段属性(property)给JavadocMethodJavadocVariable模块:

<module name="JavadocMethod">
<property name="scope" value="public"/>
</module>
<module name="JavadocVariable">
<property name="scope" value="public"/>
</module>

关于java - 如何使 Maven 构建(目标站点)因 Javadoc 警告而失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38143744/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com