FindBugs简介:
- FindBugs是一个开源的eclipse 代码检查工具,是一种白盒静态自动化测试工具;
- 它可以简单高效全面地帮助我们发现程序代码中存在的bug,bad smell,以及潜在隐患;
- 针对各种问题,它并且提供了简单的修改意见供我们重构时进行参考;
- 通过使用它,可以一定程度上降低我们code review的工作量,并且会提高review效率;
- 通过FindBugs找到bug,再由我们自己重构代码,可以培养我们的编码意识及水平,形成好的习惯提高开发编码能力。
- 详细介绍阅读官方的文档 :http://findbugs.sourceforge.net/manual
注意:
新版的FindBugs要求是用JDK 1.7,,具体参考官网解释http://findbugs.sourceforge.net/,如果我们使用的是JDK 1.6的话,可能会遇到以下问题。
如果eclipse的版本比较高,FindBugs的版本低于2.0.2话,运行findbugs命令时会出现以下的错误:
An internal error occurred during: "Finding bugs in dynproj...". Attempted to beginRule: P/dynproj, does not match outer scope rule: MutexSchedulingRule, resource: P/dynproj
解决这个问题就是重新安装2.0.2以上的版本(修复了这个问题)。答案来自https://issues.jboss.org/browse/JBDS-2347
2.0.3版本下载地址:http://sourceforge.net/projects/findbugs/files/findbugs%20eclipse%20plugin/2.0.3/
FindBugs的使用简单介绍:FindBugs插件使用图文指南
FindBugs常用操作:
FindBugs找出的bug有3中颜色:
黑色的臭虫标志是分类
红色的臭虫表示严重bug发现后必须修改代码
橘黄色的臭虫表示潜在警告性bug 尽量修改
每次使用Find Bugs(文件,文件夹上右键--> Find Bugs-->Find Bugs)命令时,如果改动了代码,需要先Build Project;
修改完相关bug之后,在文件上右键-Find Bugs-->Clear Bug Marker清除Find Bugs的标志。