本文介绍一些Java源代码优化和分析工具,以帮助我们优化代码以及检查源代码中的潜在问题。
本文英文原文来源:http://java.dzone.com/articles/java-tools-source-code
1. PMD
网址: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. FindBugs
网址:http://findbugs.sourceforge.net
FindBugs是一个使用静态方法来查找Java代码漏洞的程序。
3.Clover
网址:http://www.cenqua.com/clover/
这个插件允许你在不离开IDE的环境条件下来衡量和检测覆盖效果。该插件通过使用Apache Ant、Maven来无缝集成其它项目,可以通过命令行界面和API系统轻松集成到传统的构建系统中。
该插件的特性:
支持快速、准确、可配置的方法、语句等;支持丰富的报告格式:HTML、PDF、XML、以及Swing GUI;精确控制源代码级别的过滤;支持代码覆盖以及其它指标的图表;完全兼容JUnit 3.x & 4.x, TestNG, JTiger以及其它的测试框架。
4. Macker
网址:http://innig.net/macker/
Macker是一个适用于Java开发人员用来检查架构规则的工具。你可以定制一个适合特定项目架构的规则文件,也可以为您的代码撰写通用的规则说明。
5. EMMA
网址:http://emma.sourceforge.net/
EMMA支持的覆盖类型:方法、类等。输出报告的格式为:文本、HTML、XML。输出报告可以高亮显示某些项目。EMMA不需要访问源代码,可以在输入类中减少调试的信息。
6. XRadar
网址:http://xradar.sourceforge.net/