前言:軟件缺陷是不可避免的,要儘量減少錯誤並提高軟件質量,主要有兩在類技術,即缺陷預防和缺陷檢測
缺陷預防包括編寫更好的設計規範、實施代碼審覈制度、運行代碼靜態分析工具、運行單元測試等
PMD是一種開源分析Java代碼的工具,通過靜態分析獲知代碼錯誤,該工具可以做到檢查Java代碼中是否含有未使用的變量、是否含有空的抓取塊、是否含有不必要的對象等等
因此Jenkins+PMD構建自動化靜態代碼檢測是很有必要的
PMD下載地址:http://sourceforge.net/projects/pmd/
下載後解壓即可
PMD主要可以通過ant腳本來執行,編寫ant的build文件,這裏新建的爲如buildPMD.xml
本文中定義了兩個target,分別生成了XML和HTML格式的報告,因爲在Jenkins中的分析插件需要用XML格式才能生成視圖報告,而XML格式對於團隊來說不直觀,不宜發送郵件,因此生成兩份報告,一份用於Jenkins分析,一份發送郵件用於團隊成員直接查看
編寫好buildPMD.xml,直接使用ant -f buildPMD.xml即可在CMD命令或Linux shell下執行PMD靜態代碼檢測
在Jenkins中新建個任務,Build項Add build step中選擇“Execute Shell”,輸入ant -f buildPMD.xml即可
附:pmdrule.xml
關於PMD rulesets規則的意思可以查看:http://pmd.sourceforge.net/pmd-5.0.4/rules/index.html