有没有办法在checkstyle中检查文件是仅使用LF还是没有CRLF,反之亦然?
我找到的唯一支票是
NewlineAtEndOfFile
但我只搜索文件末尾的更多信息?
答案 0 :(得分:3)
Checkstyle中没有任何开箱即用的功能。如果要禁止CRLF,可以使用以下配置:
<module name="RegexpMultiline">
<property name="format" value="\r\n"/>
<property name="message" value="CRLF line endings are prohibited"/>
</module>
这个禁止LF:
<module name="RegexpMultiline">
<property name="format" value="(?<!\r)\n"/>
<property name="message" value="LF line endings are prohibited"/>
</module>
答案 1 :(得分:3)
只是为了补充Michal Kordas的好答案。
下面是略微修改的配置,它只会匹配第一个错误的换行符,并且还禁止Mac OS线路结尾(CR):
<module name="RegexpMultiline">
<property name="format" value="(?s:(\r\n|\r).*)"/>
<property name="message" value="CRLF and CR line endings are prohibited, but this file uses them."/>
</module>
Michael Vorburger in this discussion发布了这个帖子,对他来说很赞赏 - 我已经在这里发布了它的完整性。