我遇到了一种情况,即Checkstyle在ParenPad规则检查中产生假阳性。我也看到了这篇文章,所以Checkstyle: Usage of ParenPad Check和这个问题是无关的。
考虑以下代码段:
public class Foo
public static final void main( String... args ) { ... }
}当ParenPad配置如下时:
<module name="ParenPad">
<property name="option" value="space" />
</module>此结果将显示为有效,因为在打开(之前,main方法中有一个空格。
在ParenPad检查类中,我没有看到任何其他规则/配置,这些规则/配置可以用于在括号之前和/或之后强制使用单个空格。有什么内置的东西可以让我强制执行这个要求,还是需要创建一个自定义检查?据我所知,当前的实现检查是否存在任意数量的空格,无论它是以选项卡分隔还是以其他方式分隔。
发布于 2016-05-15 18:03:51
查看校验样式的代码,我目前看到的唯一方法是添加另一个检查。首先定义ParenPad,然后添加两个RegexpSingleline
<module name="RegexpSingleline">
<property name="format" value="(\s{2,}$"/>
<property name="message" value="Too many spaces after ("/>
</module>
<module name="RegexpSingleline">
<property name="format" value="\s{2,})$"/>
<property name="message" value="Too many spaces before )"/>
</module>的确,它可以在其他情况下中断(例如,具有(或)的字符串),但您可以将其扩展到涵盖大多数情况。
https://stackoverflow.com/questions/37241783
复制相似问题