我正在研究checkstyle和eclipsecs插件。当我创建新的"检查" (通过打开新模块),我注意到他们有高级选项卡,里面有一些奇怪的功能:id,comments,tokens(自定义检查消息除外 - 很明显)。你可以在我的截图中看到。
我确实阅读了他们的文件,但没有看到有关这些选项的任何解释。 你能帮我解释一下吗?非常感谢你。
答案 0 :(得分:0)
这些是Eclipse-CS可视化编辑器正在创建的checkstyle.xml中的可能属性。
可以为支票分配 ID ,稍后可以将其用于引用它,例如在某些情况下压制它。如果您使用不同属性多次使用相同类型的检查,这将非常有用。 This answer给出了一个使用此功能的示例。
评论是Eclipse-CS特定的元数据。它实际上只是一个注释文本,保存为检查元数据(metadata
元素)。但它仅由Eclipse checkstyle插件解释,它在高级选项卡上再次显示。
翻译令牌复选框会将自然语言(甚至可能是本地化)描述添加到令牌列表中(如果此列表存在于所选检查中)。在您的示例中,它不是,因此复选框对此检查没有影响(但它在其他人上执行,因为那个是全局复选框!)。 以下是一些屏幕截图,其中包含WhitespaceAround检查的示例,该检查支持大量令牌。
排序还会影响令牌写入生成的配置文件的顺序。排序似乎与这些标记的数值有关。由于它们是内部的并且对我们用户不可见,因此它似乎没什么用处。例如:
未“排序”:
<module name="WhitespaceAround">
<property name="tokens" value="ASSIGN,BAND,BAND_ASSIGN,BOR,BOR_ASSIGN,BSR,BSR_ASSIGN,BXOR,
BXOR_ASSIGN,COLON,DIV,DIV_ASSIGN,DO_WHILE,EQUAL,GE,GT,LAND,LCURLY,LE,LITERAL_ASSERT,
LITERAL_CATCH,LITERAL_DO,LITERAL_ELSE,LITERAL_FINALLY,LITERAL_FOR,LITERAL_IF,
LITERAL_RETURN,LITERAL_SYNCHRONIZED,LITERAL_TRY,LITERAL_WHILE,LOR,LT,MINUS,MINUS_ASSIGN,
MOD,MOD_ASSIGN,NOT_EQUAL,PLUS,PLUS_ASSIGN,QUESTION,RCURLY,SL,SLIST,SL_ASSIGN,SR,
SR_ASSIGN,STAR,STAR_ASSIGN,TYPE_EXTENSION_AND,WILDCARD_TYPE,GENERIC_START,GENERIC_END"/>
</module>
“排序”:
<module name="WhitespaceAround">
<property name="tokens" value="COLON,NOT_EQUAL,QUESTION,DIV,DIV_ASSIGN,BXOR,BXOR_ASSIGN,
MINUS,LCURLY,RCURLY,STAR,STAR_ASSIGN,TYPE_EXTENSION_AND,BAND,LAND,BAND_ASSIGN,MOD,
MOD_ASSIGN,PLUS,PLUS_ASSIGN,LT,GENERIC_START,SL,SL_ASSIGN,LE,ASSIGN,MINUS_ASSIGN,
EQUAL,GENERIC_END,GT,GE,SR,SR_ASSIGN,BSR,BSR_ASSIGN,BOR,BOR_ASSIGN,LOR,LITERAL_ASSERT,
LITERAL_CATCH,LITERAL_DO,LITERAL_ELSE,LITERAL_FINALLY,LITERAL_FOR,LITERAL_IF,DO_WHILE,
LITERAL_RETURN,SLIST,LITERAL_SYNCHRONIZED,LITERAL_TRY,WILDCARD_TYPE,LITERAL_WHILE"/>
</module>
这些示例是使用Eclipse-CS 6.14.0创建的。