Findbugs插件使用
findbugs簡介
Findbugs是一個Java代碼靜態分析工具,可以用它來檢查源代碼中可能出現的問題,以期盡可能在項目的初始階段將代碼問題解決。
FindBugs檢查的是類或者JAR文件即字節代碼(*.class),將字節碼與一組缺陷模式進行對比以發現可能的問題;許多我們寫的不好的可以優化的地方,它都能檢查出來并給建議,比如未關閉的數據庫連接、缺少必要的null check、多余的 null check、多余的if后置條件、重復的代碼塊、錯誤的使用了"==",建議使用StringBuffer代替字符串連加等等。而且我們還可以自己配置檢查規則,也可以自己來實現findbugs的接口,以便獨有的校驗規則。
下載findbugs
點擊這里到最新版本的findbugs下載頁面,我下載的是"findbugs-3.0.0-rc1.tar.gz",(windows下使用)解壓后運行bin\findbugs.bat,即可看到如下界面:
可以通過“文件”->"新建":
分別選擇“要分析的類包和目錄”、”輔助類的位置“、“源文件目錄”,然后“Analyze”:
我們更常用的方式是使用它的eclipse插件,因為這種方式手動選擇類和源文件以及輔助類,都是比較麻煩的事。
在eclipse使用findbugs插件
可以使用下面的地址安裝findbugs插件:
-
http://findbugs.cs.umd.edu/eclipse/ Only provides official releases of FindBugs.
-
http://findbugs.cs.umd.edu/eclipse-candidate/ Provides official releases and release candidates of FindBugs.
-
http://findbugs.cs.umd.edu/eclipse-daily/ Provides the daily build of FindBugs. No testing other than that it compiles.
你也可以手動下載插件:http://prdownloads.sourceforge.net/findbugs/edu.umd.cs.findbugs.plugin.eclipse_2.0.3.20131122.zip?download.
安裝后需要設置一下,否則你在"Bug Explorer"中看不到bugs:
然后在項目上右鍵:
執行后,需要打開“Bug Explorer”:Windows -> Show View -> Other :
即可看到如下圖:
PS:一定要設置下一下,我之前沒設置在Bug Explorer中死活不顯示找到的Bug!!
上一步的設置是findbugs的全局設置,也可以對項目單獨設置:項目上右鍵 -> Properties :
maven的findbugs插件
使用findbugs的maven插件也非常方便,需要為pom.xml的project添加如下子節點:
<reporting> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>findbugs-maven-plugin</artifactId> <version>2.5.2</version> </plugin> </plugins></reporting>
maven命令:
mvn findbugs:findbugs
結果顯示:
此時會在target目錄會生成文件:findbugsXml.xml,可以用findbugs打開以便可視化分析。