Checkstyle Javaルール

CheckstyleのJavaルールについて1つずつまとめます

LineLength

CheckStyle公式ドキュメント

検証環境

Checkstyleバージョン:10.3.3
Javaバージョン:17


チェック概要

チェック追加バージョン
Checkstyle 3.0

長すぎる1行の記述がないかチェックする。
デフォルトではパッケージとインポートの記述はチェック対象外。

プロパティ

プロパティ デフォルト値 説明 追加バージョン
fileExtensions String[] all files チェック対象のファイルの拡張子 8.24
ignorePattern Pattern "^(package|import) .*" チェック対象外とする行の正規表現 3.0
max int 80 最大値 3.0

設定+チェック実行結果

プロパティ設定なし

設定ファイル記述方法

<module name="Checker">
    <module name="LineLength"/>
</module>

チェック実行例

// maxに指定した値よりも長い場合NGとなる
package com.puppycrawl.tools.checkstyle.checks.design;

import com.puppycrawl.tools.checkstyle.grammar.comments.InputFullOfSinglelineComments;
import java.util.Arrays;

プロパティ設定あり

fileExtensions

チェック対象のファイルの拡張子

設定ファイル記述方法

<module name="Checker">
    <module name="LineLength">
        <property name="fileExtensions" value="xml"/>
    </module>
</module>

チェック実行例

// javaファイルはチェック対象外
package com.puppycrawl.tools.checkstyle.checks.design;

import com.puppycrawl.tools.checkstyle.grammar.comments.InputFullOfSinglelineComments;
import java.util.Arrays;

ignorePattern

チェック対象外とする行の正規表現

設定ファイル記述方法

<module name="Checker">
    <module name="LineLength">
        <property name="ignorePattern" value="^(package\|import) .*"/>
    </module>
</module>

チェック実行例

// packageはチェック対象外
package com.puppycrawl.tools.checkstyle.checks.design;

// importはチェック対象外
import com.puppycrawl.tools.checkstyle.grammar.comments.InputFullOfSinglelineComments;
import java.util.Arrays;

max

1行の長さの最大値(デフォルト:80)

設定ファイル記述方法

<module name="Checker">
    <module name="LineLength">
        <property name="max" value="3"/>
    </module>
</module>

チェック実行例

package com.puppycrawl.tools.checkstyle.checks.design;

import com.puppycrawl.tools.checkstyle.grammar.comments.InputFullOfSinglelineComments;
import java.util.Arrays;

// NG maxの値を超えているのでNG
public class MyClass {
}