14672


NetBeans + Gradle でJavaアプリケーションの開発をしています。  
コード解析ツールとしてcheckstyle(6.7)を採用しているのですが、checkFirstSentence（javadocコメントの最初の一文はピリオドで終わらなければならない）を無効にできずに困っています。

checkstyleの設定は次のようにしています。

[code]

    <module name="TreeWalker">
        <module name="JavadocStyle">
            <property name="checkFirstSentence" value="false"/>
        </module>
        <!--以下略-->
    
[/code]

JavadocStyleモジュールの挿入場所が違ったり、プロパティ名が違ったり、値にtrue/false以外の文字列を設定すると、ビルド時にちゃんとその旨を伝えるエラーメッセージが出るので、記述自体は正しいと思うのですが、それにもかかわらずcheckstyleからは`warning:
First sentence should be present.`の警告が吐き出されてしまいます。

どのような原因が考えられるでしょうか？  
あるいは、原因を調べる手段としては、どんなことが可能でしょうか？


CC BY-SA 3.0
2015-07-17T08:15:44.020
12442
2015-08-20T11:21:31.323
2015-07-20T07:19:11.280
8078
8078
question
java
checkstyleのcheckFirstSentenceを無効化できない


`sun_checks.xml`を以下のように一部修正し、

[code]

    <?xml version="1.0"?>
    <!DOCTYPE module PUBLIC
              "-//Puppy Crawl//DTD Check Configuration 1.3//EN"
              "http://www.puppycrawl.com/dtds/configuration_1_3.dtd">
    
    <module name="Checker">
        <module name="TreeWalker">
            <module name="JavadocStyle">
                <property name="checkFirstSentence" value="true"/>
            </module>
        </module>
    </module>
    
[/code]

以下のようなソースを`ant(<checkstyle config="${user.dir}/sun_checks2.xml")`でチェックすると

[code]

    public class Test {
        /**
         * aaaaaaaaaaaaaaaaaaa
         * @author aterai
         */
        public Test() {
        }
    }
    
[/code]

[code]

    checkstyle:
    [checkstyle] Running Checkstyle 6.7 on 1 files
    [checkstyle] C:\tmp\AAA\src\java\example\Test.java:35: 最初の一文はピリオドで終わらなければなりません。
    
    BUILD SUCCESSFUL
    
[/code]

と警告が表示されます。

[code]

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

のように変更すれば、

[code]

    checkstyle:
    [checkstyle] Running Checkstyle 6.7 on 1 files
    
[/code]

と、警告されません。こちらの環境(`Windows 7 64bit` \+ `JDK
1.8.0_51`)では正常に動作しているようです。違うところはメッセージが日本語になっているところですが...。

> あるいは、原因を調べる手段としては、どんなことが可能でしょうか？

`NetBeans`を使わずにコンソールから実行してみてはどうでしょうか。


CC BY-SA 3.0
2015-07-21T06:38:33.260
12526
2015-07-21T06:38:33.260
46
12442
answer


自己解決したため、回答を投稿します。  
SummaryJavadocCheckモジュールにperiodプロパティ（valueは空文字）を追加することで、無効にできました。

[code]

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


CC BY-SA 3.0
2015-08-20T11:21:31.323
14672
2015-08-20T11:21:31.323
8078
12442
answer