1.Checkstyle特点简介
a.自动化代码检测
注释,命名,大小长度,tab空白,代码问题等。
但:不能自动修改代码,代码增强功能较弱
b.配置灵活
直接修改xml文件
在eclipse的checkstyle选项中配置
1. Checkstyle的安装
Eclipse---Help----Install new software...
输入:http://eclipse-cs.sourceforge.net/update
安装OK后,重启eclipse,然后可以导出看看默认的Sun Checks XML文件
2.简单使用
书写自己的Checkstyle XML文件, 如:my_test_check.xml
<!DOCTYPE module PUBLIC
"-//Puppy Crawl//DTD Check Configuration 1.2//EN"
"http://www.puppycrawl.com/dtds/configuration_1_2.dtd">
<module name="Checker">
<module name="TreeWalker">
<module name="ParameterAssignment">
<property name="severity" value="warning"/>
</module>
<module name="ModifierOrder">
<property name="severity" value="info"/>
</module>
<module name="MethodName">
<property name="severity" value="warning"/>
</module>
<module name="EmptyStatement">
<property name="severity" value="info"/>
</module>
<module name="InnerAssignment">
<property name="tokens" value="ASSIGN,PLUS_ASSIGN,MINUS_ASSIGN"/>
</module>
<module name="DoubleCheckedLocking">
<property name="severity" value="warning"/>
</module>
<module name="UnusedImports">
<property name="severity" value="info"/>
</module>
<module name="StringLiteralEquality">
<property name="severity" value="warning"/>
</module>
<module name="RedundantModifier">
<property name="severity" value="info"/>
</module>
<module name="RedundantThrows">
<property name="severity" value="info"/>
</module>
<module name="LineLength">
<property name="max" value="120" />
</module>
<module name="MethodLength">
<property name="tokens" value="METHOD_DEF" />
<property name="max" value="60" />
</module>
<module name="MagicNumber">
<property name="tokens" value="NUM_DOUBLE, NUM_INT" />
</module>
</module>
</module>
应用my_test_check.xml
点击eclipse菜单下面的windows下面的preferences,选择checkstyle,然后点击new...按钮,如图所示:
使用该规则:
自己创建一个简单的java项目,右键点击该项目,选择properties,选中Checkstyle.
应用之后可以看到不规则的代码中检测出了错误,但不影响运行。
这是因为my_test_check.xml定义的规则
<module name="MagicNumber">
<property name="tokens" value="NUM_DOUBLE, NUM_INT" />
</module>
检查项介绍:
参考:
http://blog.csdn.net/haha_mingg/article/details/7266427