代码质量检查工具Sonar结合hudson、maven使用
一、安装
安装方式:
Sonar的安装方式有多种,可以单独安装,也可以结合maven、hudson使用;可以使用自带的内存型数据库,也可以使用自定义的数据库如mysql、oracle等
本文介绍结合maven和hudson并使用自带的数据库,可以实现sonar的自动监测代码质量变化
安装步骤:
1、 下载sonar-3.0.zip包,以版本v3.0为例
地址http://dist.sonar.codehaus.org/sonar-3.0.zip
2、 准备web容器,以安装tomcat6为例,修改tomcat的启动参数
至少是-Xmx 1024m -XX:MaxPermSize=256m
在tomcat的bin目录下的catalina.sh中添加
JAVA_OPTS="$JAVA_OPTS-server -XX:PermSize=128M -XX:MaxPermSize=512m -Xmx1024m-Dorg.apache.jasper.runtime.BodyContentImpl.LIMIT_BUFFER=true"
3、 解压sonar-3.0.zip至sonar-3.0目录,进入sonar-3.0目录下执行build-war.sh命令,则会在当前目录下生成sonar.war文件,待部署
如果要修改相关配置可以进入sonar-3.0目录下,修改sonar.properties文件,可选项包括端口、数据库信息等,若修改则需要在执行build-war.sh命令之前
4、 将sonar.war部署至tomcat的webapps目录下
5、 启动tomcat,访问相关端口即可看到页面
使用nginx做代理:
为了安全考虑,应使用nginx做代理并加上basic认证
二、配置
安全方面的配置:
1、 为安全考虑,建议使用iptables将9080端口禁止直接访问
#iptables -A INPUT -s 127.0.0.1 -p tcp --dport 9080 -j ACCEPT
#iptables -A INPUT -p tcp --dport 9080 -j DROP
2、 登录sonar,点击右上角Log in,使用默认管理员账户admin/admin登录
3、 进入 Configuration->Security->Users修改管理员账户用户和密码、添加需要的用户
Maven配置:
1、 进入工作目录,执行mvnsonar:sonar命令则可以对当前版本进行质量分析,形成一个质量版本
2、 将mvnsonar:sonar命令放到hudson中自动执行,可以选择每周执行两次,那么工程代码将会每周两个质量版本
三、sonar使用
直接使用配置好的用户进入地址可以看到相关的信息
可以为某个工程建立相应的组或者用户
可以为用户分配相应的工程权限
可以通过各种视图查看各种指标
可以进行代码review
可以看到代码质量的变化
集成了如pmd、checkstyle、findbugs、metric等各种插件