jenkins集成java靜態代碼分析工具

maven

maven有不少相關插件,主要有:css

  • checkstyle
    Checkstyle 是 SourceForge 的開源項目,經過檢查對代碼編碼格式,命名約定,Javadoc,類設計等方面進行代碼規範和風格的檢查,從而有效約束開發人員更好地遵循代碼編寫規範。java

  • FindBugs
    FindBugs 是由馬里蘭大學提供的一款開源 Java 靜態代碼分析工具。基於Bug Patterns概念,查找javabytecode(.class文件)中的潛在bugmaven

  • pmd
    PMD 是由 DARPA 在 SourceForge 上發佈的開源 Java 代碼靜態分析工具。主要分析java源文件有沒有潛在的bug,重複的代碼,多度複雜的表達式等等。工具

其餘相關插件

  • Jdepend
    主要用來分析代碼的依賴及健壯性,它遍歷Java class的文件目錄,以Java包(package)爲單位,爲每個包/類自動生成 包的依賴程度,穩定性,可靠度等的評價報告,根據這些報告,咱們能夠獲得包或類之間的依賴關係,並分析出包的穩定程度,抽象程度,是否存在循環依賴關係等。測試

  • simian
    現有的版本是基於maven1倉庫的,並且有版權的問題,能夠使用pmd來替代ui

  • javancss
    代碼的度量工具,檢查java源文件、類、方法等更細粒度的指標,提供圈複雜度編碼

  • cobertura
    提供代碼測試覆蓋率spa

  • emma
    也是代碼測試覆蓋率,可是版本較舊,可用cobertura來替代.net

  • taglist
    用來檢測代碼裏頭的TODO插件

  • duplicateFinder
    提供重複依賴檢查

jenkins集成CheckStyle, FindBugs and PMD

安裝以下插件

  • FindBugs Plug-in

  • Checkstyle Plug-in

  • PMD Plug-in

配置

在Jenkins的Build中設置

clean package findbugs:findbugs checkstyle:checkstyle pmd:pmd

並在構建設置中選中

  • Publish Checkstyle analysis results

  • Publish FindBugs analysis results

  • Publish PMD analysis results

圖片描述

關於sonar

Sonar是代碼質量管理平臺,它提供了插件擴展機制,能夠支持PMD、FindBug、checkstyle等,對於Java項目默認執行CheckStyle, FindBugs以及PMD檢測,同時也對檢測結果進行存儲,而後提供了可視化的面板,能夠查看相關趨勢。

doc

相關文章
相關標籤/搜索