svn集成checkstyle

代碼提交預校驗

   隨着代碼量的提升,代碼的質量管理也是必不可少的。代碼的規範性與軟件缺陷是有緊密聯繫的,質量高的代碼將直接提高軟件的質量。
   通過svnserver1.6.9+svnchecker0.3+checkstyle5.2的集成,達到svn在代碼提交的時候,做一些靜態代碼規範的校驗,提高代碼質量。
   預期不規範的代碼在svn提交時,會提示對應代碼的錯誤信息。

結構圖

這裏寫圖片描述

Subversion安裝

<提示:Svnserver的安裝相信大家都做過, 直接忽略。>

Subversion集成svnchecker

    SVNChecker是一個開源的檢查框架,他可以做各種檢查(不僅僅是代碼規範性),並針對各種檢查匹配處理模塊。
    也就是說目前雖然只是進行“代碼規範性檢查”,但是加入SVNChecker後,今後若想進行其他檢查,就可以輕而易舉的擴展了。

這裏寫圖片描述

    以“提交”事件舉例,當提交事件發生之前將執行hooks中的pre-commit腳本,提交事件之後將執行hooks中的post-commit腳本。
    於是我們就可以在pre-commit腳本里加入SVNChecker的執行命令。

集成方法

pre-commit下載-已配置

    將Subversion倉庫目錄hooks下的文件pre-commit.tmpl重命名爲pre-commit。

這裏寫圖片描述

    修改pre-commit的腳本如下:(svnchecker-0.3目錄以實際爲準)

這裏寫圖片描述

svnchecker集成checkstyle

    CheckStyle是SourceForge下的一個項目,提供了一個幫助JAVA開發人員遵守某些編碼規範的工具。
    它能夠自動化代碼規範檢查過程,從而使得開發人員從這項重要,但是枯燥的任務中解脫出來。

這裏寫圖片描述

    其中checkstyle的文件checkstyle_checks.xml是對Java代碼規範的定義(以後主要是對該文件的維護,此處使用以華爲的checkstyle.xml爲基礎修改的配置文件)。
    此處只開啓部分的校驗,可以隨着代碼質量的提升而漸漸放開,加入校驗。

集成方法


下載並安裝CheckStyle(使用版本:5.2)
checkstyle5.2下載-已配置

    其中checkstyle-5.2-all.jar爲供svnchecker調用的jar文件,checkstyle_checks.xml是對Java代碼規範的定義(以後主要是對該文件的維護)。  

    注意:需要賦予checkstyle-5.2-all.jar可執行的權限

下載並安裝svnchecker(使用版本:0.3)
svnchecker0.3下載-已配置

    注意:需要賦予Main.py和modules下所有文件可執行的權限。  

定義文件svncheckerconfig.ini配置svnchecker

    svncheckerconfig.ini文件是svnchecker的配置文件。但svnchecker中並未定義該文件,需要用戶自己創建。 
    其位置可以放在svnchecker根目錄(全局配置)或者svn資源庫的hooks目錄下(當前項目配置)。

這裏寫圖片描述

效果展示

每次提交代碼都要求寫提交log,報錯如下:

這裏寫圖片描述

包名要求全部小寫,類名要求首字母大寫,報錯如下:

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章