由於公司最近有掃描代碼的需求,同事推薦選擇了SonarQube來進行,環境以部署在本地為例(win10 64位),后續在測試服務器上也部署了一套,此篇作為一個總結。
1.安裝SonarQube
注:安裝SonarQube之前要先配置java且版本在1.8以上,可以在cmd里面檢查java是否安裝成功以及版本
a.http://www.sonarqube.org/downloads/ 官網下載安裝包,選擇了當前最新的7.7版本
b.解壓
c. 雙擊啟動文件 即StartSonar.bat(文件目錄:sonarqube-7.7\bin\windows-x86-64
d. http://localhost:9000 可以訪問即安裝成功,SonarQube內置了H2數據庫,所以未配置mysql時也可以啟動以及掃描的應用,但是版本升級以及項目管理不方便。
2. 配置mysql以及漢化
a. 本地安裝MySQL,版本在5.6至8.0之間,第一個坑就是mysql版本安裝高了,所以千萬要確定好版本,在\sonarqube-7.7\conf\sonar.properties文件中可以搜索mysql查看支持的版本
b.在mysql中新建數據庫,庫名為:sonar
c. 在sonar.properties文件中配置mysql,如圖,這里需要注意的是域名后面的路徑等於你在mysql中新建的數據庫名稱
d. 漢化:選擇對應版本的漢化jar包下載 地址:https://github.com/SonarQubeCommunity/sonar-l10n-zh
下載好后的jar包放在 \sonarqube-7.7\extensions\plugins目錄下
e:重啟SonarQube服務,訪問http://localhost:9000
3安裝scanner
a 下載並解壓
b 配置環境變量 path中添加E:\sonar-scanner-3.3.0.1492-windows\bin ,在cmd檢查安裝是否成功 sonar-scanner -version
c 配置文件sonar-scanner.properties中添加mysql,配置文件位置:sonar-scanner-3.3.0.1492-windows\conf
4. 使用sonar-scanner掃描,介紹一種最簡單的方式
a 登錄SonarQube,創建一個項目
b 創建一個令牌
c 選擇分析的項目(以php語言為例)
d 通過cmd進入項目根路徑,執行命令即可
后續會考慮與jenkins集成在一起使用