Checkstyle的检查项配置详解

本文详细介绍了Checkstyle的检查原理,通过分析sun_checks.xml配置文件,展示了标准检查项,如Javadoc Comments、Naming Conventions、Imports等,并提供定制个人配置文件的方法,帮助开发者根据项目需求调整Checkstyle规则。
摘要由CSDN通过智能技术生成

     要想按照自己的需求,定义Checkstyle配置文件,需要先了解Checkstyle配置文件的构成。在《代码规范工具-Checkstyle使用手册》一文中,我提及到两个Checkstyle提供的配置文件sun_checks.xml和sun_checks_eclipse.xml,那么现在下看下这两个文件的构成吧。sun_checks.xml和sun_checks_eclipse.xml所在的路径为:将Checkstyle安装包解压,在解压目录下,进入plugins, plugins目录下面有一个net.sf.eclipsecs.core_5.5.0.201111092104安装包,将该安装包解压,大家就可以看到sun_checks.xml和sun_checks_eclipse.xml这两个配置文件了。打开这两个配置文件后,我们大概可以看到:他们其实结构上几乎是一模一样的,因为sun_checks_eclipse.xml相当于sun_checks.xml的更加严格的规范限定版本,因此,我们只需要看sun_checks.xml文件即可。

1  Checkstyle的检查原理

    sun_checks.xml是由多个module节点构成,因此可以发现:Checkstyle配置是通过指定modules来应用到java文件的。modules树状结构,以一个名为Checkermodule作为root节点,一般的checker都会包括TreeWalkermodulexml配置文件中通过modulename属性来区分modulemoduleProperties可以控制如何去执行这个module,每个property都有一个默认值,所有的check都有一个severity属性,用它来指定checklevel

TreeWalker为每个java文件创建一个语法树,在节点之间调用submodulesChecks

2  standard checks中的一些具体用法

2.1  Javadoc Comments

l         JavadocPackage

检查每个java package中是否有java注释文件,默认是允许一个package-info.java,也可以通过allowLegacy属性配置允许package.html

l         JavadocType

检查类和接口的javadoc。默认不检查author version tags

l         JavadocMethod

检查方法和构造函数的javadoc。默认不检查未使用的异常抛出。

l         JavadocVariable

检查变量的javadoc

l         JavadocStyle

检查javadoc的格式。比如:javadoc的第一行是否以句号结束,javadoc除了tags外是否有description,检查javadoc中的html格式。

l         WriteTag

输出javadoc中的tag

2.2  Naming Conventions

l        AbstractClassName

检查抽象类名。

l         ClassTypeParameterName

检查类的Parameter名。

l         ConstantName

检查常量名。

l         LocalFinalVariableName

检查局部的final类型变量名,包括catch的参数。

l         LocalVarableName

检查局部的非final类型的变量名,包括catch的参数。

l         MemberName

检查非静态变量。

l         MethodName

检查方法名。</

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值