參考:https://wiki.jenkins.io/display/JENKINS/FindBugs+Pluginmaven
忽然,天降瑣事。我是想安安靜靜的作個美麗的測試。。。可是事與願違,項目經理叫我幫忙開發findbug,最近恰好搭建好jenkins持續集成環境,那就把fingbug集成進去不是剛恰好。測試
關於jenkins的安裝於配置就再也不細說,直接開始fingbug的安裝。ui
1、Jenkins插件配置spa
Jenkins 》 系統配置 》 管理插件 》 搜索findbugs,安裝插件:FindBugs Plugin,Report Info Plugin,Static Analysis Collector Plug-in 插件
2、Job相關配置3d
若是已有Job的話只須要修改build以及Post Steps和構建設置以及構建後操做,若是沒有的話須要本身新建job,流程再也不贅述,只是把和findbug相關的部分進行展現blog
一、Jenkins主頁 》 選擇Job 》 配置 》 Build中的Goals and options選項,設置爲compile -D maven.test.skip=true clean compile findbugs:findbugs生命週期
二、Post Steps和構建設置以下圖所示ip
三、構建後操做,我這裏選擇了兩項,和fingbug相關的其實就第一個就足夠了,我選擇最後一個是爲了消除其餘影響,每次都會全新下載數據,至於高級操做,但是視狀況而定,我這裏選擇默認沒有進行高靜操做選擇。開發
3、結果查看
一、執行構建操做,查看構建Job 二、查看findbug結果詳情
咱們能夠從構建歷史,點擊最新的一次構建,進入以後,選擇「FindBugs Warnings」進入詳情界面,而後能夠查看details查看詳情,這裏會有指導意見,建議怎麼修改
三、屢次運行以後還會生成fingbug趨勢圖
4、FAQ
一、使用了fingbug:findbug可是檢測不到問題
答:這裏可能有兩個緣由,1是findbug運行失敗,沒有生效,2是因爲運行clean以後,class文件都被刪除了,由於findbug就是檢測class文件的,因此沒有class文件天然不會去運行findbug,沒有運行天然不會發現問題。
解決方法:
(1)mvn clean compile findbugs:findbugs
(2)mvn clean test findbugs:findbugs (test會調用compile生命週期)
這兩個命令順序執行,若是是由於findbug:findbug運行失敗,則根據報錯,進行修復,例以下圖所示,就是一些maven的依賴包不全,沒有下載下來致使,須要自行去下載並放置到指定目錄而且修改pom文件(須要先在pom文件中搜索一下是否已有,已有的不要重複配置,下載jar包便可,這個真的好耗費時間,足足搞了我半個工做日)。
下載地址:https://mvnrepository.com/,而後搜索你須要的jar包,選擇以後,能夠看到界面有配置信息,粘貼複製便可,例如
而後選擇上圖Download(JAR)下載jar包,而且按照配置文件路徑放置。
二、看到不少博客,報告展現有對pom文件的配置,是否有必要
答:我以爲是沒有必要的,不用配置也是OK的,也沒有找到配置的緣由暫時,只是愚見。