代码质量检查工具Sonar结合hudson、maven使用

标签: 代码 质量 检查 | 发表时间:2013-05-26 22:25 | 作者:noliyo
出处:http://blog.csdn.net

一、安装

安装方式:

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等各种插件


作者:noliyo 发表于2013-5-26 22:25:28 原文链接
阅读:88 评论:0 查看评论

相关 [代码 质量 检查] 推荐:

代码质量检查工具Sonar结合hudson、maven使用

- - CSDN博客研发管理推荐文章
Sonar的安装方式有多种,可以单独安装,也可以结合maven、hudson使用;可以使用自带的内存型数据库,也可以使用自定义的数据库如mysql、oracle等. 本文介绍结合maven和hudson并使用自带的数据库,可以实现sonar的自动监测代码质量变化. 1、  下载sonar-3.0.zip包,以版本v3.0为例.

使用 JSLint 保证 JavaScript 代码质量

- zhibin - IBM developerWorks 中国 : Web development : Articles,Tutorials
随着富 Web 前端应用的出现,开发人员不得不重新审视并重视 JavaScript 语言的能力和使用,抛弃过去那种只靠“复制 / 粘贴”常用脚本完成简单前端任务的模式. JavaScript 语言本身是一种弱类型脚本语言,具有相对于 C++ 或 Java 语言更为松散的限制,一切以函数为中心的函数式编程思想也为开发人员提供了更加灵活的语法实现.

编写高质量的Java代码

- - 研发管理 - ITeye博客
Java 开发通用方法和准则. 不要在变量和常量出现易混淆字母:int i=1l;. 三元操作符的值类型务必保持一致;. 避免带有变长参数的方法重载:Java 5 引入了变长参数,varags, 用…表示,变长参数必须是最后一个参数,一个方法不能有多个变长参数;. 别让null和空值影响到变长方法,主要出现在在变长方法的重载;.

iOS编写高质量代码

- - SegmentFault 最新的文章
这是一篇读书笔记,快速记录各种高效率编程的技巧和方法. 这些方法是为了提升编码质量和效率,高质量代码利于后期的维护和更新,毕竟不能一份代码到永远. 由于是记录形式,当然不能把整篇内容都写下来,只记录关键性的内容,长期更新. Objective-C使用了消息机制代替调用方法. 区别:使用消息结构的语言,其运行时缩影执行的代码由运行环境来决定.

如何提高代码质量(管理篇):代码复查

- - 博客 - 伯乐在线
也许你是一位项目经理,也许你是一位项目骨干成员,或者开发小组长. 在我发表“如何提高代码质量”的这一系统文章后,有许多网友都向我抱怨,说他无法把握整个项目组成员的代码质量. 我想,这也是所有项目组普遍存在的问题吧,它通常表现为以下几个问题:. 任何项目组成员都不可避免地出现新手,他们往往是刚刚从大学毕业的学生.

CSS代码检查工具推荐:CSS Lint

- - 标点符
CSS Lint是一个开源的校验CSS文件质量的工具,最初是由 Nicholas C. Zakas和 Nicole Sullivan编写的,最初版本在Velocity会议上于2011年6月发布. CSS Lint的检测规则包括错误的和警告,当选择器或属性书写不正确、漏掉了大括号、多写了分号等时,会提示解析错误,解析错误优先提示.

SonarQube4.4+Jenkins进行代码检查实例之二

- - CSDN博客推荐文章
在 《 SonarQube4.4+Jenkins进行代码检查实例之一》 中介绍了不编译只检查的方式. 但是有些代码检查需要使用字节码,比如Findbugs的检查依赖于字节码,实例一中只提取源代码,就不能进行Findbugs的检查. 要进行Findbugs检查就需要编译. 1,首先当然是要下载最新的Findbugs     http://docs.codehaus.org/display/SONAR/FindBugs+Plugin   ,当前最新版是V3.0,  supports analysis of Java 8 bytecode but requires Java 1.7 to run (see Compatibility section).

SonarQube4.4+Jenkins进行代码检查实例之一

- - CSDN博客研发管理推荐文章
在最新的《 关于代码审查的几点建议》中再次提到了代码分析: 6、尽量使用静态代码分析工具以提高审查效率. 笔者之前也谈到过多次代码分析、代码检查,见:. 关于代码评审的微博讨论汇集 . #敏捷有效实践# 每日代码自动检查 英文是daily code inspection. 对代码质量关注时,安排人工检查code review是需要的,但100% code review需要很多工作量,不是所有的组织值得这样做,而工具自动检查是只需少量人工建设配置,99%的组织值得采用.

如何编写高质量的Javascript代码

- jessie - 蓝色理想
优秀的Stoyan Stefanov在他的新书中(《Javascript Patterns》)介绍了很多编写高质量代码的技巧,比如避免使用全局变量,使用单一的var关键字,循环式预存长度等等. 这篇文章不仅仅从代码本身来考虑如何优化编码,也从代码的设计阶段来考虑,包括书写API文档,同事的review,使用JSLint.