我需要在eclipse checkstyle上执行验证规则,在 {方法之后,在结束键} 之前应该有一个空行,例如:
public void wrongMethod() {
System.out.println("wrong method");
}
正确
public void correctMethod() {
System.out.println("correct method");
}
我尝试在checkstyle规则xml文件中使用 RegexpMultiline ,做这样的事情:
<module name="RegexpMultiline">
<property name="format" value=".+\{\n.+[;]"/>
<property name="message" value="should have empty line"/>
</module>
当然,这个Regex表达式可以更好,问题是,多行为行为在regex simulator site中使用上面的示例,但在checkstyle中不行。我搜索了一个checkstyle文档,但没有为此找到一个准备好的reature。
任何人都知道这个问题的解决方案吗?
感谢。
答案 0 :(得分:0)
您可能会对CRLF
行结尾的文件进行检查。如果是,请记住您的模式中的\r
。
这对我有用:
<module name="RegexpMultiline">
<property name="format" value="\{[\r]?\n(?![\r]?\n)"/>
<property name="message" value="should have empty line"/>
</module>
我在模式中改变了几件事:
.+
不需要;