1) 下載
從sonar官網(wǎng)http://www.sonarsource.org/下載到最新的2.1.2版本。大概50M。
2) 安裝
1. 安裝要求
在server端,sonar要求jdk 5.0和maven,這個(gè)通常可以滿足。
然后是數(shù)據(jù)庫(kù)支持,默認(rèn)使用Derby 內(nèi)嵌數(shù)據(jù)庫(kù),這個(gè)肯定不合適了,準(zhǔn)備修改為mysql。
客戶端就簡(jiǎn)單了,基本現(xiàn)有的主流瀏覽器都支持,BS架構(gòu)就是方便。
解壓縮下載好的包到安裝路徑。
2. 配置mysql
先準(zhǔn)備好mysql,在mysql中新建名為sonar的database,encoding選擇為UTF-8,然后新建名為sonar密碼也是sonar的用戶,設(shè)置好對(duì)sonar database的權(quán)限。
修改sonar配置文件以便使用mysql,打開(kāi)sonar/conf/sonar.properties文件, 首先找到
#----- Embedded database
# Comment the following lines to deactivate the default embedded database (used only for tests and demos)
sonar.jdbc.url: jdbc:derby://localhost:1527/sonar;create=true
sonar.jdbc.driverClassName: org.apache.derby.jdbc.ClientDriver
sonar.jdbc.validationQuery: values(1)
將這里注釋掉,然后找到mysql的設(shè)置,默認(rèn)是被注釋的,打開(kāi)即可
#sonar.jdbc.url: jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8
#sonar.jdbc.driverClassName: com.mysql.jdbc.Driver
#sonar.jdbc.validationQuery: select 1
3. 啟動(dòng)
執(zhí)行./bin/linux-x86-32/sonar.sh start,啟動(dòng)sonar。
默認(rèn)sonar使用9000端口,直接打開(kāi)瀏覽器訪問(wèn)http://192.168.0.40:9000/ 即可。默認(rèn)管理員賬號(hào)密碼為: admin/admin。
安裝過(guò)程可以說(shuō)非常簡(jiǎn)單,按照官網(wǎng)的說(shuō)法,兩分鐘搞定,當(dāng)然是指其他的東西如maven,mysql都齊備的情況下。
3) 使用sonar
安裝完了之后試用一下sonar,找到一個(gè)maven的項(xiàng)目,有現(xiàn)成的pom文件。
1. 設(shè)置maven
因?yàn)閟onar是使用maven插件來(lái)分析代碼并將分析結(jié)果插入數(shù)據(jù)庫(kù)的,因此必須在maven的設(shè)置文件中配置好數(shù)據(jù)庫(kù)信息。
打開(kāi)maven的settings.xml文件,增加sonar的配置如下:
<settings>
<profiles>
<profile>
<id>sonar</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<sonar.jdbc.url>
jdbc:mysql://localhost:3306/sonar?useUnicode=true&characterEncoding=utf8
</sonar.jdbc.url>
<sonar.jdbc.driver>com.mysql.jdbc.Driver</sonar.jdbc.driver>
<sonar.jdbc.username>sonar</sonar.jdbc.username>
<sonar.jdbc.password>sonar</sonar.jdbc.password>
</properties>
</profile>
</profiles>
</settings>
為了避免內(nèi)存不足造成maven出錯(cuò),建議修改maven參數(shù),如 export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=256m" 來(lái)設(shè)置內(nèi)存使用。
2. 執(zhí)行sonar的分析
輸入mvn sonar:sonar,即可完成sonar的分析,接著打開(kāi)http://192.168.0.40:9000/就可以看到詳細(xì)的分析結(jié)果。