假设我有以下枚举:
enum Colour
{
RED (1),
GREEN (2),
Blue (3); // Invalid
final int colourCode;
Colour(final int code)
{
this.colourCode = code;
}
}
我希望Checkstyle强制执行所有枚举常量必须只包含大写字符,数字和下划线。
在这种情况下,Blue
应该抛出错误,而其他所有内容(包括成员colourCode
)都可以。
我查看了来自the naming section of the documentation的MemberName
,ConstantName
和StaticVariableName
,但似乎没有适用,也无法在枚举中专门定位它们。
答案 0 :(得分:2)
Core Checkstyle无法做到这一点,令人惊讶。您必须使用Sevntu Checkstyle插件,其中包含EnumValueNameCheck。我认为默认行为正是您所需要的,因此您需要对其进行配置:
datatype
确保在运行之前将Sevntu Checkstyle添加到Checkstyle类路径中。他们的网站上有关于如何在各种情况下执行此操作的说明。