一个空行不能有空格
例如,第22行是空行,有4个空格,checkstyle检查报错:
将4个空格删掉,checkstyle检查通过:
行末尾不能有空格
将行末尾的空格删掉即可消除这个违反项:
用WhitespaceAfter模块检查token后面要跟空格
checkstyle用WhitespaceAfter来检查:
https://checkstyle.sourceforge.io/checks/whitespace/whitespaceafter.html
在规则集文件中,可以通过WhitespaceAfter模块的property来定制,例如:
<module name="WhitespaceAfter"><property name="tokens" value="COMMA, SEMI, LITERAL_IF, LITERAL_ELSE, LITERAL_WHILE, LITERAL_DO, LITERAL_FOR, DO_WHILE"/>
</module>
备注:checkstyle官网的文档更新不及时,可以接受的tokens不准确:
真正可以接受的tokens 如下,来自WhitespaceAfterCheck 9.3版本的源码:
if/for/while/switch/do等保留字和括号之间要加空格
例如,下面else和前面的大括号之间没有空格,checkstyle检查报违反项:
else和前面的大括号之间增加一个空格,检查通过:
二目、三目运算符的左右两边要加一个空格
例如,下面除号(/)左右两侧没有加空格,检查报违反项:
在除号(/)左右两侧各加一个空格,检查通过:
逗号前不应该有空格
例如,下面表达式中逗号前有一个空格,检查报违反项:
将逗号前的空格去掉,检查通过: