搭建sonar,推动代码质量管理


  最近比较关注devops相关的文章,尝试搭建sonarqube服务,进行代码质量的分析和管理,先记录下本地环境的搭建和分析过程。

一、sonarqube服务搭建

  官网地址:http://www.sonarqube.org/

  

  选择了当前最新版本,sonar是拆箱即用的,当然你本地的jdk环境得预先安装好,网上看到jdk支持1.5+,但没试过最新的版本是否要提高jdk的版本,我本地环境变量指定的是

jdk1.6.

  解压后,可以在bin目录下看到不同操作系统的目录,我的是win7 64bit

  

  进入对应的目录,点击StartSonar.bat启动

  

  启动完毕后,可通过默认端口进行访问,sonar可以指定数据库,这里采用默认数据库,需要用别的数据库的同学可以通过conf目录下配置文件修改

  

  打开后界面如下,登录账号默认是admin/admin,需要汉化的同学点击配置=》系统=》更新中心,找到chinese Pack进行安装后重启生效

  

  至此我们的sonar服务已经搭建完毕,接下来开始对代码进行分析。

二、如何进行分析

  首先安装分析工具sonar-scanner

  

  scanner需要jdk1.7+,我本地默认是jdk1.6,因此修改启动文件,指定jdk版本为1.7;

  为了在任何目录启动scanner,将启动目录添加至环境变量Path.

  

  找一个你的项目工程,在根目录添加sonar-project.properties

  

  我们来看下配置文件的内容

  # 工程的key和name维护成一样即可
  sonar.projectKey=weike_open
  sonar.projectName=weike_open

  #当前工程的版本
  sonar.projectVersion=1.7.1.0
  #进行扫描分析的代码顶级目录

  sonar.sources=src

  #编译文件存放的目录
  sonar.binaries=bin
  # 分析的语言
  sonar.language=java
  # 源码编码格式
  sonar.sourceEncoding=UTF-8

  

  接着我们通过doc窗口进入工程根目录,执行sonar-runner(sonar-scanner是新的命名,命令还是runner)就可以开始代码的扫描分析了。

  第一次扫描遇到了一个问题,因为低版本的svn版本信息会保存在每个文件中,sonar在分析代码时,对svn版本文件不识别导致分析中断。

  解决方法如下

  

  只要关闭对svn版本文件的扫描即可。

  

  分析完毕后,可以在主页看到分析后的统计信息,像技术债务时间、问题代码、代码的统计信息等等

  

  

  希望本文对使用sonar来进行代码质量管理的同学有所帮助,早日偿还技术债务。

  

 

 

  

  

  

  

 

    

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM