一、SonarQube的安裝使用
SonarQube是管理代碼質量一個開放平台,可以快速的定位代碼中潛在的或者明顯的錯誤,本文將會介紹一下這個工具的安裝、配置以及使用。
下載地址:http://www.sonarqube.org/downloads/
本文下載的版本是sonarqube-6.7.6。
下載完之后,選擇進入具體的版本,本文作者的環境是:D:\sonarqube-6.7.6\bin\windows-x86-64
然后點擊:StartSonar.bat啟動SonarQube。
啟動后顯示SonarQube is up;
地址欄輸入:
http://localhost:9000
表示:SonarQube安裝完成,現在還沒配置數據庫,還不能正式使用。
二、數據庫配置
1.打開mysql,新建一個數據庫sonar。
2.打開sonarqube安裝目錄下的D:\sonarqube-6.7.6\conf\sonar.properties文件
3.輸入以下數據庫信息:
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance sonar.jdbc.username=root sonar.jdbc.password=root 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.數據庫初始化成功后,登錄
選擇常用語言,構建工具。
mvn sonar:sonar \ -Dsonar.host.url=http://localhost:9000 \ -Dsonar.login=a82d37888543b88fc2cac796922748d2cae45a14
6.按照下圖的點擊順序,進入插件安裝頁面,搜索框搜索chinese,選擇中文包,安裝中文插件,安裝之后,會自動提醒重啟服務,點擊重啟,重啟完之后,刷新,就看到中文版的頁面
三、maven項目里的pom配置
7.在Maven的settings.xml設置sonar信息
其中<sonar.host.url>http://localhost:9000</sonar.host.url>指明了sonar服務器的地址。所以在執行maven命令的時候,<sonar.host.url>指明的服務器必須已運行起來。
<profiles> <profile> <id>sonar</id> <properties> <sonar.jdbc.url>jdbc:mysql://localhost:3306/sonar</sonar.jdbc.url> <sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver> <sonar.jdbc.username>root</sonar.jdbc.username> <sonar.jdbc.password>root</sonar.jdbc.password> <sonar.host.url>http://localhost:9000</sonar.host.url> <!-- Sonar服務器訪問地址 --> </properties> </profile> </profiles> <activeProfiles> <activeProfile>sonar</activeProfile> </activeProfiles>
8.執行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賬號登錄進入,可以查看到相關信息