javadoc - Checkstyle:如何关闭 "SummaryJavadoc: First sentence of Javadoc is missing an ending period."

标签 javadoc checkstyle

我无法关闭 CheckStyle 错误

SummaryJavadoc: First sentence of Javadoc is missing an ending period.

根据this thread ,修复是

<module name="JavadocStyle">
   <property name="checkFirstSentence" value="false"/>
</module>

但是我放进去后没有效果,还是报错。

根据消息,错误出现在 SummaryJavadoc 中,而不是 JavadocStyle 中。所以我尝试将该属性放入 SummaryJavadoc 中:

   <module name="SummaryJavadoc">
        <property name="checkFirstSentence" value="false"/>
        <property name="forbiddenSummaryFragments"
         value="^@return the *|^This method returns |^A [{]@code [a-zA-Z0-9]+[}]( is a )"/>
    </module>

但这完全破坏了 CheckStyle,所以我也不能把它放在那里。

最佳答案

checkFirstSentence 设置为 false 可以消除 Javadoc第一句缺少结束句点 对于 JavadocStyle 的违规情况。要从 SummaryJavadoc 中删除 Javadoc 第一个句子缺少结束句点,请将 句点 设置为空。

$ cat TestClass.java
public class TestClass {
    /** Example */
    void method() {
    }
}

$ cat TestConfig.xml
<?xml version="1.0"?>
<!DOCTYPE module PUBLIC
          "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
          "https://checkstyle.org/dtds/configuration_1_3.dtd">

<module name="Checker">
    <property name="charset" value="UTF-8"/>

    <module name="TreeWalker">
<module name="JavadocStyle">
   <property name="checkFirstSentence" value="false"/>
</module>
<module name="SummaryJavadoc">
   <property name="period" value=""/>
</module>
    </module>
</module>

$ java -jar checkstyle-8.20-all.jar -c TestConfig.xml TestClass.java
Starting audit...
Audit done.

关于javadoc - Checkstyle:如何关闭 "SummaryJavadoc: First sentence of Javadoc is missing an ending period.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55905527/

相关文章:

java - 如何对同一类型的 Checkstyle 问题应用多个快速修复?

嵌入语法高亮源代码的 javadoc doclet

java - 自定义Java代码库使用技巧

android - 混淆后如何保持javadoc可见

java - 关于 checkstyle SUN 约定的派生异常的最简单的 javadoc 文档?

java - 专门针对gwt代码的代码分析器?

android - Eclipse 无法识别 Android 兼容性 Javadoc

tags - JDK 8 javadoc @propertyGetter、@propertySetter 和 @propertyDescription 警告

java - 为什么Java接口(interface)常量被Checkstyle中的ConstantName检查视为非公共(public)的

java - 有没有办法从 Java 程序中调用 checkstyle?