Checkstyle: как отключить "SummaryJavadoc: в первом предложении Javadoc отсутствует завершающий период". - PullRequest
0 голосов
/ 29 апреля 2019

У меня проблемы с отключением ошибки CheckStyle

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

Согласно этой теме , исправление

<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, поэтому я тоже не могу поместить его туда.

Ответы [ 2 ]

1 голос
/ 30 апреля 2019

Установка checkFirstSentence как false устраняет нарушения для First sentence of Javadoc is missing an ending period для JavadocStyle.Чтобы удалить First sentence of Javadoc is missing an ending period из SummaryJavadoc, установите period как ничего.

$ 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.
0 голосов
/ 29 апреля 2019

Я решил это - как предполагает связанная ветка, есть Шаг 2: полностью удалите раздел SummaryJavadoc. Требуется как часть решения . Я думал, что часть ответа не связана, просто предпочтение.

Таким образом, есть 2 шага, чтобы избавиться от ошибки First sentence of Javadoc is missing an ending period в Checkstyle:

ШАГ 1

Добавить

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

ШАГ 2

Удалить или закомментировать весь SummaryJavadoc раздел:

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