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的標志。