Java质量检测评估工具

Java代码质量检测评估工具
“五大” 代码分析领域:

  • 编码风格
  • 冗余代码
  • 代码覆盖率
  • 依赖项分析
  • 复杂度监控

一下列举了一些目前比较流行的工具。网址后面列出了其PR值,可以反映此工具的流行度。

##1. 编码风格
CheckStyle
Home page: http://checkstyle.sourceforge.net/ (6)
对应的eclipse插件有多个,其中eclipsecs最常用
Home page: http://eclipse-cs.sourceforge.net/ (6)
eclipse插件URL:http://eclipse-cs.sf.net/update/

##2. 冗余代码
Simian http://www.redhillconsulting.com.au/products/simian/ (5)
PMD 的 CPD http://pmd.sourceforge.net/cpd.html (5)

##3. 代码覆盖率
EMMA http://emma.sourceforge.net/ (6)
Cobertura http://cobertura.sourceforge.net/ (6)
EclEmma http://update.eclemma.org/ (5)
Coverlipse http://coverlipse.sourceforge.net/ (3)

##4. 依赖项分析
JDepend http://clarkware.com/software/JDepend.html (6)

##5. 复杂度监控
Metrics http://metrics.sourceforge.net/ (4)

##6. 静态分析工具
具有以上两项或两项以上的综合工具(也称为静态分析工具):

###6.1 PMD
Home page: http://pmd.sourceforge.net/ (6)
eclipse插件URL:http://sourceforge.net/projects/pmd/files/pmd-eclipse/update-site/

###6.2 FindBugs http://findbugs.sourceforge.net/ (6)
eclipse插件URL:http://findbugs.cs.umd.edu/eclipse

FindBugs 检查程序生成的class文件,即分析字节码
PMD 检查源码,分析源代码

###6.3 Jtest
http://www.parasoft.com/jtest

###6.4 Jlint
http://artho.com/jlint/ (5)

###6.5 Lint4j
http://www.jutils.com/ (4)

我个人平时最常用的是Checkstyle,其次是PMD,大家可以参考一下。

##参考资料
http://blog.csdn.net/cb_121/archive/2009/05/22/4208792.aspx