1) 下载
   从sonar官网http://www.sonarsource.org/下载到最新的2.1.2版本。大概50M。
2) 安装
    1. 安装要求
    在server端,sonar要求jdk 5.0和maven,这个通常可以满足。
    然后是数据库支持,默认使用Derby 内嵌数据库,这个肯定不合适了,准备修改为mysql。
    客户端就简单了,基本现有的主流浏览器都支持,BS架构就是方便。
    解压缩下载好的包到安装路径。
    2. 配置mysql
    先准备好mysql,在mysql中新建名为sonar的database,encoding选择为UTF-8,然后新建名为sonar密码也是sonar的用户,设置好对sonar database的权限。
    修改sonar配置文件以便使用mysql,打开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的设置,默认是被注释的,打开即可
#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. 启动
    执行./bin/linux-x86-32/sonar.sh start,启动sonar。
    默认sonar使用9000端口,直接打开浏览器访问http://192.168.0.40:9000/ 即可。默认管理员账号密码为: admin/admin。
    安装过程可以说非常简单,按照官网的说法,两分钟搞定,当然是指其他的东西如maven,mysql都齐备的情况下。
3) 使用sonar
    安装完了之后试用一下sonar,找到一个maven的项目,有现成的pom文件。
    1. 设置maven
	因为sonar是使用maven插件来分析代码并将分析结果插入数据库的,因此必须在maven的设置文件中配置好数据库信息。
        打开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>
 
    为了避免内存不足造成maven出错,建议修改maven参数,如 export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=256m" 来设置内存使用。
    2. 执行sonar的分析
        输入mvn sonar:sonar,即可完成sonar的分析,接着打开http://192.168.0.40:9000/就可以看到详细的分析结果。