常用 Java 静态代码分析工具的分析与比较
静态代码分析是指无需运行被测代码,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性,找出代码隐藏的错误和缺陷,如参数不匹配,有歧义的嵌套语句,错误的递归,非法计算,可能出现的空指针引用等等。?
现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBugs,PMD,Jtest)?,以下为他们内置的编程规范,即大部分可检查bug类型
Checkstyle:
FindBugs:
PMD:
Jtest
其中,Checkstyle 更偏重于代码编写格式,及是否符合编码规范的检验,对代码 bug 的发现功能较弱;而 FindBugs,PMD,Jtest 着重于发现代码缺陷。在对代码缺陷检查中,这三种工具在针对的代码缺陷类别也各有不同,且类别之间有重叠。
?
相关资料
更多内容请参见原帖http://www.ibm.com/developerworks/cn/java/j-lo-statictest-tools/
?