本文轉載自 代碼質量管理平臺SonarQube的安裝、配置與使用 ,
因爲使用的 SonarQube 和 Sonar-Scanner版本不同,所以有些改動。
準備工作:
1、下載SonarQube:http://www.sonarqube.org/downloads/
2、下載Sonar-Scanner:https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner
3、jdk和mysql數據庫
我下載下來SonarQube是7.7版本,Sonar-Scanner是3.3.0版本
一:安裝篇
1.下載好sonarqube後,解壓打開bin目錄,啓動相應OS目錄下的StartSonar。如本文演示使用的是win的64位系統,則打開C:\SonarQube\sonarqube-7.7\sonarqube-7.7\bin\windows-x86-64\StartSonar.bat
2.啓動瀏覽器,訪問http://localhost:9000,如出現下圖則表示安裝成功。
二:配置篇
1.打開mysql,新建一個數據庫。
2.打開sonarqube安裝目錄下的C:\SonarQube\sonarqube-7.7\sonarqube-7.7\conf\sonar.properties文件
3.在mysql5.X節點下輸入以下信息
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=root
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,會稍微有點慢,因爲要初始化數據庫信息
5.數據庫初始化成功後,登錄
6.按照下圖的點擊順序,進入插件安裝頁面,搜索chinese Pack,安裝中文語言包,然後重啓
7.重啓方式有多種
7.1:頁面上有重啓按鈕,不過好像很慢(反正我的頁面一直轉圈)
7.2:關閉SonarQube.bat窗口,再打開任務管理器,直接把所有java.exe進程關掉,再重新啓動StartSonar.bat文件,重啓後就能 看到中文界面了
三:使用篇
1.打開Sonar-Scanner的配置文件,我的路徑是 C:\SonarQube\sonar-scanner-cli-3.3.0.1492-windows\sonar-scanner-3.3.0.1492-windows\conf\sonar-scanner.properties
2.加上如下配置,數據庫和上文是同一個數據庫
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=root
sonar.jdbc.password=123456
3.注意:如果測試項目與服務器不在同一臺機子,則需要添加服務器的IP:
#----- Default SonarQube server
sonar.host.url=http://XXX.XXX.XXX.XXX:9000
4.配置環境變量
4.1:新建變量,name=SONAR_RUNNER_HOME。value=C:\SonarQube\sonar-scanner-cli-3.3.0.1492-windows\sonar- scanner-3.3.0.1492-windows
4.2:打開path,輸入%SONAR_RUNNER_HOME%\bin;
4.3:打開CMD窗口,輸入 sonar-scanner -version,看到下圖說明成功
5.找到需要掃描的項目,在項目的根目錄下新建 sonar-project.properties文件,輸入以下信息
sonar.projectKey=ebo
sonar.projectName=ebo
sonar.version=0.0.1-SNAPSHOT
sonar.sources=C:/project/ebo/src/main/java
sonar.java.binaries=C:/project/ebo/target/classes
sonar.projectKey:SonarQube服務器每次添加一個項目時要求填寫一個項目名和關鍵字,此處是關鍵字
sonar.projectName:項目名,就和你的項目名稱保持一致就好了
sonar.version:項目版本
sonar.sources:要掃描的源碼路徑,我在此處就直接寫項目的絕對路徑了
sonar.java.binaries:項目生成的class文件的路徑
6.設置成功後,啓動sonarqube服務,並啓動cmd
7.在cmd進入項目所在的根目錄,輸入命令:sonar-scanner 開始掃描(版本低的sonar-scanner的掃描命令好像是sonar-runner,我也沒有深入研究),分析成功後會出現下圖
8.打開http://localhost:9000/,我們會看到主頁出現了分析項目的概要圖