java

位置:IT落伍者 >> java >> 浏览文章

CheckStyle的使用及其在Eclipse中的集成


发布日期:2022年03月03日
 
CheckStyle的使用及其在Eclipse中的集成

这里的有些check有个公共的属性tokens意思是该check应用的范围例如同样是检查方法的长度普通方法可能最多可以有而构造函数则最多只能有这时虽然同样是使用MethodLength这个check但是可以用tokens这个属性进行区分如下xml文件的片段

这其中应用了两次MethodLength第一次的tokens定义为METHOD_DEF即普通的方法第二次的tokens定义为CTOR_DEF即构造函数并且在此定义了与缺省值不同的值这样CheckStyle可以根据方法的种类不同而执行不同的check策略CheckStyle也定义了大量的诸如CTOR_DEF形式的tokens类型应用于不同的check中的tokens其定义在compuppycrawltoolscheckstyleapiTokenTypes类中这些Tokens实际上是对源代码文件进行拆分后做对应的时候的一些标志类似编译中的语法分析CheckStyle的原理应该就是在对源代码做语法分析后针对这些Tokens的内容比对预先设定好的代码写作策略并给出对比的结果TokenTypes类内容很多这里就不一一列举了

下面是对具体的check的描述这些check可以被分为了如下所示

===== CHECK STYLE ========

Annotations JDK中的Annotation相关(未展开)

Block Checks 代码块相关

Class Design 类设计相关

Coding 编码相关

Duplicate Code 冗余代码

Headers 源文件的头

Imports 引入包相关

Javadoc Comments JavaDoc相关

Metrics 复杂度分析

Miscellaneous 其它

Modifiers 修饰符相关

Naming Conventions 命名规范

Regexp 正则表达式相关

Size Violations 文件大小等相关

Whitespace 空格处理相关

==========================

具体的内容由于比较多我写在了一个单独的WORD文档中有了这些预置的check基本可以满足规范编码的要求了在Myeclipse的环境下可以通过对Formatter的定义在format的过程中可以自动满足一些check的要求这部分我会在《应用CheckStyle检查代码和Formatter规范代码》中予以详细说明

上一篇:Jakarta Struts应用的七个经验(4)

下一篇:CXF与spring集成