Sonar本地環境搭建


一個新項目准備上線提測了,為了在提測之前做一下代碼走查,同時了解項目目前的質量情況,就在本地搭建了一套sonar環境。搭建的過程中遇到了很多問題,sonar官方已不再維護Eclipse的svn插件,所以之前很多網上的教程都存在問題了。通過自己的摸索,最后還是成功搭建好了環境。下面我們開始搭建吧。

1 准備階段

(1)下載MySQL,地址:http://dev.mysql.com/downloads/installer/
(2)下載SonarQube,地址:http://www.sonarqube.org/downloads/
(3) 下載SonarQube中文插件,地址:http://download.csdn.net/detail/u010218242/9272667

1.2 環境准備
(1)確保本機已經安裝JDK
(2)安裝數據庫
由於sonar需要數據庫支持,我們首先安裝數據庫,這里使用mysql(當然你也可以安裝其他數據庫)。

第一步:安裝mysql,安裝流程就不說了,這里特別需要注意的是選擇編碼格式的時候一定要選擇utf8.

這里寫圖片描述

第二步:使用命令創建數據庫,名字為sonar:

CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;

第三步:創建一個sonar用戶並把這個用戶的密碼設置為soanr:

CREATE USER ‘sonar’ IDENTIFIED BY ‘sonar’;

第四步:將第二步中創建的sonar數據庫的所有權限賦給第三步中創建的sonar用戶:

GRANT ALL ON sonar.* TO ‘sonar’@’%’ IDENTIFIED BY ‘sonar’;
GRANT ALL ON sonar.* TO ‘sonar’@’localhost’ IDENTIFIED BY ‘sonar’;
FLUSH PRIVILEGES;

這里寫圖片描述

至此數據庫已經建好了。
這里寫圖片描述

  1. 安裝SonarQube
    第一步:將下載的sonarqube解壓到你的本地目錄

這里寫圖片描述
第二步:修改配置文件,打開conf目錄下的日志文件,然后加入以下信息:

sonar.jdbc.username=sonar
sonar.jdbc.password=sonar
sonar.jdbc.url=jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance

這里寫圖片描述

第三步:bin目錄下會有各種平台的啟動腳本,我用的windows-x86-32的:

這里寫圖片描述

點擊StartSonar.bat,開始啟動。第一次啟動需要初始化數據庫,需要等一會兒:
這里寫圖片描述

第四步:在瀏覽器中打開http://localhost:9000/,正常安裝的情況會顯示如下界面:

這里寫圖片描述
至此,我們的SonarQube已經安裝成功了,如果想要使用SonarQube平台管理我們的代碼質量,還需要安裝代碼解析工具。通常我們使用maven來集成sonar的解析,請看下小節。

  1. Maven中集成sonar
    第一步:在maven的setting.xml文件中加入以下內容:
<profile> <id>sonar</id> <activation> <activeByDefault>true</activeByDefault> </activation> <properties> <sonar.jdbc.url>jdbc:mysql://localhost:3306/sonar?useUnicode=true&amp;characterEncoding=utf8&amp;rewriteBatchedStatements=true</sonar.jdbc.url> <sonar.jdbc.username>sonar</sonar.jdbc.username> <sonar.jdbc.password>sonar</sonar.jdbc.password> <sonar.host.url>http://localhost:9000</sonar.host.url> </properties> </profile>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

第二步:接下來在sonarqube啟動的情況下,進入maven項目中,執行mvn sonar:sonar命令,等待結束。那么在http://localhost:9000下就可以查看sonar分析的結果了。

對於開發者來說,如果我們能夠在Eclipse中直接集成sonar那是更加方便了,我們可以直接在Eclipse中查看sonar問題。接下來我們演示如何在Eclipse中集成sonar。

4. Eclipse集成sonar

第一步:安裝sonar插件,打開Help > Install New Software… ,輸入下面這個網址 (http://downloads.sonarsource.com/eclipse/eclipse/),接下來就會顯示下面這個界面內容
這里寫圖片描述

然后點擊next安裝就OK了,完成安裝之后會提示你重新啟動。

第二步:Eclipse上運行sonar,Eclipse執行maven命令:sonar:sonar:

這里寫圖片描述
這里寫圖片描述
再去locahost:9000下面查看,已經ok:

這里寫圖片描述
如果我們想直接在Eclipse中查看sonar問題,我們點擊工程右鍵,如下圖:

這里寫圖片描述
然后再次右擊工程,進行解析,如下圖:

這里寫圖片描述
分析結果:

這里寫圖片描述

到這里,sonar本地環境搭建已經完全ok!

總結:
在本地搭建sonar環境的過程當中,經歷了各種問題,版本問題、官方sonar插件不維護問題…通過各種嘗試終於搞定,如果你安裝的過程當中出現了什么問題可以聯系我。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM