常用Java代码质量检测评估工具

1. PMD from http://pmd.sourceforge.net/

PMD能够扫描Java 源代码,查找类似以下的潜在问题:

可能的bug——try/catch/finally/switch语句中返回空值。

死代码——未使用的局部变量、参数、私有方法。

不理想的代码——使用String/StringBuffer。

过于复杂的表达式——没有必要使用if语句、while循环可以代替for循环。

重复代码——复制/粘贴的代码引发的bug。

PMD集成了JDeveloper, Eclipse, JEdit, JBuilder, BlueJ, CodeGuide, NetBeans/Sun Java Studio Enterprise/Creator, IntelliJ IDEA, TextPad, Maven, Ant, Gel, JCreator, 以及 Emacs。

2. FindBug from http://findbugs.sourceforge.net

FindBug是一个使用静态方法来查找Java代码漏洞的程序。

3.Clover from http://www.cenqua.com/clover/

这个插件允许你在不离开IDE的环境条件下来衡量和检测覆盖效果。该插件通过使用Apache Ant、Maven来无缝集成其它项目,可以通过命令行界面和API系统轻松集成到传统的构建系统中。

该插件的特性:

支持快速、准确、可配置的方法,语句等。

支持丰富的报告格式:HTML、PDF、XML、以及Swing GUI。

精确控制源代码级别的过滤。

支持代码覆盖以及其它指标的图表。

完全兼容JUnit 3.x & 4.x, TestNG, JTiger以及其它的测试框架。

4. Macker from http://innig.net/macker/

Macker是一个适用于Java开发人员用来检查架构规则的工具。你可以定制一个适合特定项目架构的规则文件,也可以为您的代码撰写通用的规则说明。

5. EMMA from http://emma.sourceforge.net/

EMMA支持的覆盖类型:方法、类等。

输出报告的格式为:文本、HTML、XML。

输出报告可以高亮显示某些项目。

EMMA不需要访问源代码,可以在输入类中减少调试的信息。

6. XRadar from http://xradar.sourceforge.net/

XRadar是一个开放的、为代码生成可扩展报告的工具。目前支持基于Java的所有系统。批量处理的框架可以用来生成HTML/SVG系统的报告。Xradar可以估量代码的大小、复杂性以及代码的重复性、依赖性等。

7. Hammurapi from http://www.hammurapi.com

Hammurapi是一款执行Java程序代码的自动检测工具。提供的实例中含有282条Hammurapi代码规则,提供了120多个Java类,这款所谓的检测工具,可以从三个级别来检测代码是否违背了编码标准。

8. Relief from http://www.workingfrog.org/

Relif是一款设计工具,为Java项目提供了崭新的面貌。我们可以充分发挥自己的能力来处理真实的实例——通过检测大小、形状、关系等来简化处理过程。

9. Hudson from http://hudson-ci.org/

Hudson 是一个持续集成工具,使用Java编写,运行在servlet容器中,比如Apache Tomcat或者或GlassFish应用服务器。它支持SCM工具,包括CVS、Subversion、Git和ClearCase。它可以执行Apache Ant、基于Apache Maven的项目、以及任意的shell脚本和 Windows批处理命令。

10. Cobertura fromhttp://cobertura.sourceforge.net/

Cobertura是一个免费的基于jcoverage的Java工具,用于计算代码被测试访问的百分比,它可以被用来确定Java程序中的缺少部分的测试覆盖率。

11. SonarSource from http://www.sonarsource.org/

Sonar是一个管理代码质量的开放平台。因此,它涵盖了代码质量的7个方面:架构与设计、重复、单元测试、复杂性、潜在错误、编码规则、评论。

英文原文:http://java.dzone.com/articles/java-tools-source-code

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)

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

1、PMD

Home page: http://pmd.sourceforge.net/ (6)

eclipse插件URL:http://pmd.sourceforge.net/eclipse

2、FindBugs http://findbugs.sourceforge.net/ (6)

eclipse插件URL:http://findbugs.cs.umd.edu/eclipse

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

PMD 检查源码,分析源代码

3、Jtest http://www.parasoft.com/jtest

4、Jlint http://artho.com/jlint/ (5)

5、Lint4j http://www.jutils.com/ (4)

分享到:

2013-05-14 16:07

浏览 7988

评论

java检测工具_常用Java代码质量检测评估工具相关推荐

  1. python代码检测工具及区别_flake8-python代码质量检测工具

    flake8是python代码质量检测工具. 描述 flake8是一个命令行实用程序,用于在整个Python项目中加强样式的一致性. 默认情况下,它包括PyFlakes项目提供的lint检查,PyCo ...

  2. html自动生成工具_关于STM32代码自动生成的工具的进度....

    前情提要:STM32代码自动生成工具_本想...但是...可是...所以 首先说一下那几天大家的反应,有的持观望态度,毕竟STM32CUBE很香:有的很激动,期待我快点出东西:还有的很淡定,知道我在挖 ...

  3. python如何实现图片工具_常用的十大 python 图像处理工具

    本文为 AI 研习社编译的技术博客,原标题 : 10 Python image manipulation tools. 作者 | Parul Pandey 翻译 | 安其罗•乔尔.JimmyHua 编 ...

  4. 【IDEA】代码质量检测工具 QAPLug

    [IDEA]代码质量检测工具 QAPLug 代码质量检测工具 情景: 写完代码一定要别人review才发现bug或不好的语法或多余的变量是一件多么尴尬的事情,如果想在写代码时或者写代码后自己能发现问题 ...

  5. Java应用编程_常用类库汇总2(日期类正则表达式国际化程序)

    总览[Java SE] 相关文章链接 [Java应用编程_常用类库汇总1(字符串处理类&&对象克隆&数字操作类库&-)] [Java应用编程_常用类库汇总3(开发支持类 ...

  6. 代码查看工具_这样Review代码牛逼啦!

    一个对项目负责的团队代码质量检查是必不可少的,有条件的团队经常有代码review习惯,这样可以使技术团队共同进步,但是一个庞大的工程做代码review其实是很麻烦的,所以就催生了很多的工具,今天我们就 ...

  7. Gitlab集成阿里巴巴P3C-PMD代码质量检测插件

    1. 获取P3C-PMD (1) 下载源码 源码地址:https://github.com/alibaba/p3c p3c-pmd-2.1.1-jar.zip: https://pan.baidu.c ...

  8. 代码质量检测-SonarQube

    文章目录 前言 一.SonarQube是什么? 二.SonarQube安装步骤 1.docker安装 2.docker-compose安装 3. 访问SonarQube 4. 配置SonarQube ...

  9. 代码质量检测(jacoco pmd pipeline)

    代码质量检测 一.静态代码分析 静态代码分析是指在不运行程序的前提下,对源代码进行分析或检查,范围包括代码风格.可能出现的空指针.代码块大小.重复的代码等. pipeline中,静态代码分析通常被安排 ...

最新文章

  1. ubuntu-make/makefile/cmake
  2. 修改系统density适配
  3. 廊田镇楼下村定点帮扶-农业大健康·李喜贵:功能性农业深加工
  4. python wmi antivirusproduct_Python中的WMI查询问题
  5. false libhadoop was built without ISA-L support以及编译hadoop本地库失败(没有解决)
  6. 混淆矩阵怎么看_201.工具篇MECE法则:透过结构看世界。
  7. 虚拟机linux命令界面转,虚拟机-linux系统中图形界面和命令行界面切换
  8. PP视频如何更改截图保存路径及图片类型
  9. 病毒详解及批处理病毒制作:自启动、修改密码、定时关机、蓝屏、进程关闭...
  10. linux zookeeper 端口号,linux下zookeeper安装
  11. 「leetcode」127. 单词接龙【广度优先搜索】超详细讲解!
  12. 从哪儿摔倒,从哪儿爬起
  13. DocuCentre S2110设置网络打印IP地址方法
  14. hrm系统源码php,开源HRM源码系统下载
  15. d2008标定说明书_柯力D2008调试说明书.pdf
  16. html+css+javascript实现抖音超火罗盘时钟 (免费附源码)
  17. java 泛型方法 类型_Java泛型方法
  18. C# Winform生成条码二维码
  19. <Healing Psoriasis The Natural Alternative>笔记(持续进行中)
  20. 如何用python编写程序打开csv格式文件

热门文章

  1. 百度前200页部分答案(初稿)
  2. 填坑:Windows下使用OpenSSL生成自签证书(很简单,一个晚上搞明白的,让后来者少走弯路)
  3. GIS文件转化为GMT文件的步骤
  4. NXP I.MX芯片资源合集
  5. 吕鑫书中自己定义的CMyTime
  6. (找规律)23,41,18,64,? 问号处填什么?
  7. 文远知行们穿越“羊城”封控区,有讲好无人车这个故事吗?
  8. 09年房地产全行业零利润或亏损
  9. 直方图均衡化算法原理及bins的理解
  10. python中的strip()和split()函数