posts - 89,  comments - 98,  trackbacks - 0

          官方網(wǎng)站:http://findbugs.sourceforge.net/
          Eclipse插件:http://findbugs.sourceforge.net/downloads.html

            插件管理技巧

            提示:新下載的插件PlugIn一定不要都放在原始的Eclipse目錄下去。

          1. 前提是你已經(jīng)安裝好了Eclipse工具了,比如安裝在E:\OpenSource\Eclipse\目錄下,以下這個目錄以%ECLIPSE_HOME%來進行表示;
          2. 此時默認(rèn)的插件是在%ECLIPSE_HOME%\plugins目錄中的;
          3. 在%ECLIPSE_HOME%下建立一個PlugInsNew的目錄;
            比如:E:\OpenSource\Eclipse\PlugInsNew\
          4. 你下載了個新的插件,比如叫做:XYZ
             那么就在%ECLIPSE_HOME%\PlugInsNew\目錄下建立XYZ目錄,目錄里面是eclipse目錄,eclipse目錄包含有features與plugins兩個子目錄;結(jié)構(gòu)如下圖所示:

              
          5. 把下載的新插件的文件放在以下相應(yīng)目錄中
            %ECLIPSE_HOME%\PlugInsNew\XYZ\eclipse\features
            %ECLIPSE_HOME%\PlugInsNew\ XYZ\eclipse\plugins
          6. 建立相關(guān)的.link的文件
            然后在%ECLIPSE_HOME%\links目錄里建立一個XYZ.link的文件
            內(nèi)容如是:path=E:/OpenSource/Eclipse/PlugInsNew/XYZ就一行這樣的路徑指示而已。
            當(dāng)然,采用相對路徑來表示可能更直觀一些,方便進行文件整體移動和小組全部成員的共享命名用,省得移動后要改動Link文件里的絕對路徑而費心費力。直接拷貝過去就可以使用。
            即XYZ.link文件的內(nèi)容如是:path=../PlugInsNew/XYZ
            這樣,如果你下載了多個插件就可以如法炮制建立多個Link文件,想加載哪個插件就把哪個插件的Link文件放到%ECLIPSE_HOME%\links的目錄中即可,使用與管理都很方便,建議千萬不要放在默認(rèn)的安裝目錄中;
            如果你的%ECLIPSE_HOME%與此不同,請修改XYZ.link文件里的路徑
          7. 刪除,關(guān)閉Eclipse
            刪除%ECLIPSE_HOME%\links\XYZ.link文件即可
            刪除%ECLIPSE_HOME%\PlugInsNew\XYZ整個目錄及文件
          8. 重新啟動Eclipse即可

            使用

            重新啟動Eclipse后,在Help => About Eclipse SDK => Plug-in Details你可以看到由“FindBugs Project”提供的“FindBugs Plug-in”版本0.0.17插件,如下圖所示:

            

            FindBugs的使用方法

            FindBugs是一個可以在Java程序中發(fā)現(xiàn)Bugs的程序。

            它是專門用來尋找處于“Bug Patterns”列表中的代碼的。

            Bug Patterns指很有可能是錯誤的代碼的實例。

            目前FindBugs最高版本0.9.4,不過更新速度很快的,你應(yīng)當(dāng)經(jīng)常上去看看是否有新版本發(fā)布。Eclipse plugin for FindBugs最高版本0.0.17。

            系統(tǒng)要求

            使用FindBugs至少需要JDK1.4.0以上版本,F(xiàn)indBugs是平臺獨立的,可以運行于GNU/Linux、Windows、MacOS X 等平臺上。

            運行FindBugs至少需要有256 MB內(nèi)存,如果你要分析一個很大的項目,那就需要更加多的內(nèi)存了。

            FindBugs獨立運行和與Ant結(jié)合的詳細(xì)操作就不介紹了,可以看官方的文檔http://findbugs.sourceforge.net/manual/

            獨立運行的效果圖如下:

            

            本文主要介紹在Eclipse中使用的情況

            打開Bug Details視圖

            Windows => Show View => Other… => FindBugs => BugDetails

            

            在Package Explorer或Navigator視圖中,選中你的Java項目,右鍵,可以看到“Find Bugs”菜單項,子菜單項里有“Find Bugs”和“Clear Bug Markers”兩項內(nèi)容,如下圖所示:

            

            我們建立一個簡單的測試文件Test.java 內(nèi)容如下:

          public class Test { private String[] name; public String[] getName() { return name; } public void setName(String[] name) { this.name = name; } } 


            我們點中“Find Bugs”,運行時會出現(xiàn)如下進度框:

            運行結(jié)束后可以在Problems中看到增加了如下的警告信息內(nèi)容

            FindBugs運行后的警告信息內(nèi)容不僅在Problems視圖中顯示,而且將標(biāo)記在源代碼標(biāo)記框中,在源代碼編輯器中我們可以看到警告標(biāo)識,如下圖:

            當(dāng)光標(biāo)指向你的警告信息的代碼上面時,就會有相應(yīng)的錯誤提示信息,與Eclipse本身的錯誤或警告信息提示類似。

            選中Problems視圖里出現(xiàn)的相應(yīng)問題,就會在代碼編輯器里切換到相應(yīng)的代碼上去,方便根據(jù)相應(yīng)的提示信息進行代碼的修改。

            

            在Problems視圖里,選中相應(yīng)的問題條目,右鍵,在彈出的菜單中,可以看到“Show Bug Details”,如下圖所示:

            

            點中它,會切換到Bug Details視圖上去,顯示更加詳細(xì)的提示信息。

            當(dāng)然,在代碼編輯窗口中,點擊帶有警告提示信息的圖標(biāo)時,也會自動切換到Bud Details窗口去,查看詳細(xì)的警告信息,如下圖所示。

            

            根據(jù)這里詳細(xì)的信息,你可以得到FindBugs為什么會對你的代碼報警告信息,及相應(yīng)的處理辦法,根據(jù)它的提示,你可以快速方便地進行代碼修改。

            

            根據(jù)提示,我們將代碼修改成如下,再運行就不會報有警告信息了。

          public class Test { private String[] name; public String[] getName() {     String[] temp = name; return temp; } public void setName(String[] name) {     String[] temp = name; this.name = temp; } } 

            配置FindBugs

            選擇你的項目,右鍵 => Properties => FindBugs =>

            

            可以配置的信息包括如上圖所示的四個選項的相關(guān)設(shè)置:

          1. Run FindBugs Automatically開關(guān)

            當(dāng)此項選中后,F(xiàn)indBugs將會在你修改Java類時自動運行,如你設(shè)置了Eclipse自動編譯開關(guān)后,當(dāng)你修改完Java文件保存,F(xiàn)indBugs就會運行,并將相應(yīng)的信息顯示出來。

            當(dāng)此項沒有選中,你只能每次在需要的時候自己去運行FindBugs來檢查你的代碼。

          2. Minimum priority to report選擇項

            這個選擇項是讓你選擇哪個級別的信息進行顯示,有Low、Medium、High三個選擇項可以選擇,很類似于Log4J的級別設(shè)置啦。 比如:

            你選擇了High選擇項,那么只有是High級別的提示信息才會被顯示。

            你選擇了Medium選擇項,那么只有是Medium和High級別的提示信息才會被顯示。

            你選擇了Low選擇項,那么所有級別的提示信息都會被顯示。

          3. Enable bug categories選擇項

            在這里是一些顯示Bug分類的選擇:

            Correctness關(guān)于代碼正確性相關(guān)方面的

            Performance關(guān)于代碼性能相關(guān)方面的

            Internationalization關(guān)于代碼國際化相關(guān)方面的

            Multithreaded correctness關(guān)于代碼多線程正確性相關(guān)方面的

            Style關(guān)于代碼樣式相關(guān)方面的

            Malicious code vulnerability關(guān)于惡意破壞代碼相關(guān)方面的

            比如:如果你把Style的檢查框去掉不選擇中它,那么與Style分類相關(guān)的警告信息就不會顯示了。其它的類似。

          4. Select bug patterns to check for選擇項

            在這里你可以選擇所要進行檢查的相關(guān)的Bug Pattern條目

            可以從Bug codes、Detector name、Detector description中看到相應(yīng)的是要檢查哪些方面的內(nèi)容,你可以根據(jù)需要選擇或去掉相應(yīng)的 檢查條件。

            總結(jié)

            此插件的功能很不錯,可以幫助我們提升Java代碼的編寫能力,寫出更加安全可靠的代碼。建議使用或加在Ant里進行持續(xù)構(gòu)建。

            現(xiàn)在,你可以馬上拿出你已經(jīng)開發(fā)的一個項目,檢查一下你的代碼有沒有問題了

          posted on 2007-11-22 20:47 水煮三國 閱讀(2918) 評論(0)  編輯  收藏 所屬分類: J2EE
          <2007年11月>
          28293031123
          45678910
          11121314151617
          18192021222324
          2526272829301
          2345678

          常用鏈接

          留言簿(4)

          隨筆分類(85)

          隨筆檔案(89)

          文章分類(14)

          文章檔案(42)

          收藏夾(37)

          java

          oracle

          Sybase

          搜索

          •  

          積分與排名

          • 積分 - 210988
          • 排名 - 266

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 长垣县| 乳源| 永兴县| 岗巴县| 平湖市| 行唐县| 长汀县| 永春县| 土默特左旗| 天气| 友谊县| 建瓯市| 泗洪县| 会同县| 长沙市| 紫金县| 巧家县| 六枝特区| 江孜县| 赫章县| 靖江市| 东乌珠穆沁旗| 黄石市| 东海县| 永城市| 准格尔旗| 互助| 江陵县| 万山特区| 沙河市| 华宁县| 叶城县| 锡林浩特市| 阿拉善左旗| 漳州市| 乌拉特中旗| 辉南县| 南安市| 洪洞县| 桃园县| 靖宇县|