接上篇,maven弄完後我們接下來安裝sonar插件html
3.sonarjava
sonar是一款很是棒的代碼質量管理的開源平臺,雖然我只是用它來看下測試覆蓋率,但它在其餘方面作的也很好,下面是它的界面(安裝了中文包):mysql
他能夠由maven、hudson啓動,下面先介紹maven啓動。web
首先去官網http://www.sonarqube.org/下載(我下的是4.1版本,4.1之後的版本的啓動貌似有不一樣),解壓後先改一下他的數據庫設置,打開~\sonarqube-4.1.2\conf\sonar.properties 。sql
先將他自帶的H2數據庫註釋掉:數據庫
將mysql數據庫部分的註釋刪除:windows
而後找到maven的setting.xml文件,在文件中加入下面這段文字:tomcat
<profile> <id>sonar</id> <activation> <activeByDefault>true</activeByDefault> </activation> <properties> <sonar.jdbc.url>jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8</sonar.jdbc.url> <sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver> <sonar.jdbc.username>sonar</sonar.jdbc.username> <sonar.jdbc.password>sonar</sonar.jdbc.password> <!-- SERVER ON A REMOTE HOST --> <sonar.host.url>http://localhost:9000</sonar.host.url> </properties> </profile>
而後在數據庫建立一個名稱是sonar的數據庫,再創建一個新用戶,用戶名和密碼都是sonar架構
這裏的主機設置成「%」是爲了讓其餘電腦也能用這個用戶名和密碼訪問這個數據庫,完成以後,進入~\sonarqube-4.1.2\bin\windows-x86-64中(對應本身的操做系統),點擊StartSonar.bat啓動sonar,而後運行cmd,找到我們的項目,輸入mvn sonar:sonarapp
PS:我出現過的錯誤
數據庫鏈接不上:我本身把用戶名和密碼寫錯了。。。
sonar按GBK編譯了項目:在pom.xml中加入
<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties>
編譯成功後
輸入http://localhost:9000,就能夠看到本身的項目了。
4.Hudson
首先肯定你已經安裝了tomcat和JDK1.5及以上的版本,而後去hudson官網http://hudson-ci.org/下載hudson.war包
下載完後有兩種安裝方式:
1.直接把.war包扔到tomcat的webapp目錄下,啓動tomcat。
2.建立一個文件夾hudson,把hudson-3.2.1.war扔進去,設置系統變量HUDSON_HOME,路徑爲X:/hudson,在命令行中輸入
java -jar hudson.war
輸入localhost:8080/hudson-3.2.1,進入hudson
第一次啓動hudson時,它會進入一個插件配置的界面,我們須要的插件以下:
這裏還須要一個sonar hudson插件(在首次安裝插件的界面見不到到它)
安裝完畢後重啓tomcat,在這個過程當中,tomcat提示我sonar插件安裝失敗,緣由是少了maven plugin 1.334.hpi,google找到該插件,下載後安裝上,
再重啓,sonar安裝成功。
輸入http://127.0.0.1:8080/hudson-3.2.1 進入主界面,找到系統管理,設置用戶
建立用戶
建立完用戶後進入系統設置界面。
進入到設置界面,
設置JDK
設置maven
設置sonar
注意:在hudson中設置sonar後,若是項目在hudson中構建失敗,則不會觸發sonar分析,也就是說只有在hudson編譯-測試-打包經過後才能啓動sonar分析;
若是想讓sonar在構建失敗時也進行分析的話,須要~(未完待編輯)
郵箱的配置以及輪詢時間這裏就不詳細介紹了。下面開始新建項目:
構建任務名爲Test
配置SVN路徑
這個URL去VisualSVN中能夠找到
點擊Save以後,我們就能夠開始構建了
構建進行中:
構建完成後,我們就能看到下面這種狀況:
至此CI的環境就基本完成了,下次會詳細介紹svn實時觸發hudson構建,即實現真正的持續集成。
參考文章:
[1]Hudson+Sonar+Maven+SVN詳細集成介紹 - 考試類 - 道客巴巴
[2]sonar 中文版與英文版切換 - 雪中梅 - ITeye技術網站
[3]使用hudson對項目進行持續sonar分析_看不見的尾巴_新浪博客