SonarQube 7.x 的安裝使用 + 整合Maven 使用
阿新 • • 發佈:2018-11-24
SonarQube是管理程式碼質量一個開放平臺,可以快速的定位程式碼中潛在的或者明顯的錯誤,下面將會介紹一下這個工具的安裝、配置以及使用。
下載地址:
http://www.sonarqube.org/downloads/
1.下載好sonarqube後,解壓開啟bin目錄,啟動相應OS目錄下的StartSonar。如本文演示使用的是win的64位系統,則開啟D:\JavaDev\sonarqube-7.4\bin\windows-x86-64\StartSonar.bat
2.啟動瀏覽器,訪問http://localhost:9000,如出現下圖則表示安裝成功。
二、配置篇
1.開啟mysql,新建一個數據庫。
2.開啟sonarqube安裝目錄下的D:\sonar\sonarqube-5.3\sonarqube-5.3\conf\sonar.properties檔案
3.在mysql5.X節點下輸入以下資訊
sonar.jdbc.url=jdbc:mysql://192.168.10.10:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance sonar.jdbc.username=dev sonar.jdbc.password=123456 sonar.sorceEncoding=UTF-8 sonar.login=admin sonar.password=admin
其中:url是資料庫連線地址,username是資料庫使用者名稱,jdbc.password是資料庫密碼,login是sonarqube的登入名,sonar.password是sonarqube的密碼
4.重啟sonarqube服務,再次訪問http://localhost:9000,會稍微有點慢,因為要初始化資料庫資訊,重啟時候有可能一直卡在那裡,重啟服務不生效,這時候可以重啟電腦,然後再次訪問http://localhost:9000,會發現配置生效。
5.資料庫初始化成功後,登入
6.按照下圖的點選順序,進入外掛安裝頁面,搜尋框搜尋chinese,選擇中文包,安裝中文外掛,安裝之後,會自動提醒重啟服務,點選重啟,重啟完之後,重新整理,就看到中文版的頁面
7.在Maven的settings.xml設定sonar資訊
其中<sonar.host.url>http://localhost:9000</sonar.host.url>指明瞭sonar伺服器的地址。所以在執行maven命令的時候,<sonar.host.url>指明的伺服器必須已執行起來。
${MAVEN_HOME}/conf/settings.xml:
<profiles>
<profile>
<id>sonar</id>
<properties>
<sonar.jdbc.url>jdbc:mysql://192.168.10.10:3306/sonar</sonar.jdbc.url>
<sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver>
<sonar.jdbc.username>dev</sonar.jdbc.username>
<sonar.jdbc.password>123456</sonar.jdbc.password>
<sonar.host.url>http://localhost:9000</sonar.host.url> <!-- Sonar伺服器訪問地址 -->
</properties>
</profile>
</profiles>
<activeProfiles>
<activeProfile>sonar</activeProfile>
</activeProfiles>
三、執行篇
1.執行mvn sonar:sonar命令進行程式碼分析。
我們可以在Eclipse中,對一個標準maven工程執行sonar。說明:由於maven對sonar有很好的支援,會自動執行相應的指令碼,所以無需在pom中新增sonar說明。
在執行maven進行sonar分析之前,必須確保sonar伺服器已經處於執行狀態。本例中sonar伺服器執行在localhost:9000上。
首先,執行sonar:sonar命令,最後得到輸出如下輸出。如果輸出”BUILD SUCCESS“說明已經構建成功。
檢視分析結果
對於使用sonar自帶伺服器來說,在瀏覽器訪問:http://sonar_ip:9000,開啟sonar結果頁面。可使用admin/admin賬號登入進入,可以檢視到相關資訊