一、前提條件:java
linux基本操做基礎,一個已安裝的關係數據庫mysql
系統要求:linux
Oracle JRE:7u75+git
OpenJDK:7u55+github
MySQL:5.1和5.5,SonarQube3.5+支持MySQL5,4.4支持MySQL 5.7sql
瀏覽器:IE11+,Chrome或Firefox數據庫
系統內存1GB以上瀏覽器
配置環境:CentOS 7爲例,其餘linux版本相似服務器
二、執行sample分析ui
1. 下載並解壓 SonarQube-5.3,假設它在/etc/sonarqube下
2. 啓動SonarQube服務器
執行 /etc/sonarqube/bin/[OS]/sonar.sh start
能夠看到執行成功提示,
執行 /etc/sonarqube/bin/[OS]/sonar.sh status能夠查看sonarqube服務器的啓動狀態。
3. 下載並解壓SonarQube Scanner,假設放在/etc/sonar-runner。runner是運行分析的客戶端。分析項目時會用到它。
4. 下載並解壓待分析的工程實例,假設放在/etc/sonar-examples
5. 分析一個java示例項目
$ cd /etc/sonar-examples/projects/languages/java/sonar-runner/java-sonar-runner-simple
$ /etc/sonar-runner/bin/sonar-runner
6. 打開http://localhost:9000就能夠查看分析結果了。(默認的系統管理員帳號是:admin/admin)
7.
三、數據庫配置
SonarQube默認使用H2內存數據庫,建議配置爲關係數據庫,如Mysql,SQL Server或Oracle。
注意:數據庫的字符集必須是UTF-8,語言是英語,Mysql數據庫中必須使用InnoDB存儲方式。
以本地MySQL爲例,新建數據庫sonar,引擎InnoDB rpm方式安裝MySQL教程
編輯 /etc/sonarqube/conf/sonar.properties文件
解除註釋並填寫實際值:
sonar.jdbc.username=[數據庫用戶名]
sonar.jdbc.password=[數據庫密碼]
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
執行 /etc/sonarqube/bin/[OS]/sonar.sh restart 重啓sonarqube便可。
4、解析sonar-project.properties
在第二步中咱們分析了一個簡單的項目,能夠看到在項目根目錄/etc/sonar-examples/projects/languages/java/sonar-runner/java-sonar-runner-simple中有一個sonar-project.properties文件,它就是分析項目了依據了,在分析一個項目時,能夠經過指定runner的參數來設置分析路徑,也能夠經過sonar-project.properties文件指定,建議使用後者。在這個文件裏能夠指定分析的語言,源文件的路徑等。
sonar.projectKey=org.sonarqube:java-simple-sq-scanner #項目key,在SonarQube中必須是惟一的
sonar.projectName=Java :: Simple Project Not Compiled :: SonarQube Scanner #用於展現的項目名稱
sonar.projectVersion=1.0 #版本
# Comma-separated paths to directories with sources (required)
sonar.sources=src #源文件路徑,該路徑是相對於當前路徑的
# Language
sonar.language=java #分析語言java
# Encoding of the source files
sonar.sourceEncoding=UTF-8 #源文件編碼
五、插件安裝
登陸SonarQube管理控制檯,Administrator -> System-> Update Center -> Avaliable
在這裏能夠找到全部sonar支持語言的插件,裝完插件以後重啓sonar就好了。