最近比较关注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来进行代码质量管理的同学有所帮助,早日偿还技术债务。

  

  

  

  

  

    

搭建sonar,推动代码质量管理的更多相关文章

  1. Sonar入门(五):使用 Sonar 进行代码质量管理

    Sonar 概述 Sonar 是一个用于代码质量管理的开放平台.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具. 与持续集成工具(例如 Hudson/Jenkins ...

  2. 使用 Sonar 进行代码质量管理

    参考资料: 使用 Sonar 进行代码质量管理 SonarQube的安装.配置与使用 SonarLint(Sonar) 代码质量管理

  3. 手把手教你用SonarQube+Jenkins搭建--前端项目--代码质量管理平台 (Window系统)

    前言 网上教程大多介绍的是Linux系统下SonarQube+Jenkins如何使用,这是因为这两款软件一般都是部署在服务器上,而大多数服务器,采用的都是Linux系统.大多数服务器用Linux的原因 ...

  4. 代码质量管理工具 sonar 配置

    代码检查工具有很多findBugs等等 sonar配置: 1.下载sonar 5.5, 解压,运行 sonarqube-5.5\bin\windows-x86-64\StartSonar.bat , ...

  5. SonarQube代码质量管理平台比较好的搭建和使用资料

    http://www.voidcn.com/blog/lidujun1028/article/p-3831235.html   Sonar (SonarQube)是一个开源平台,用于管理源代码的质量. ...

  6. Sonar——代码质量管理平台

    Sonar——代码质量管理平台 一.基本认识 Sonar (SonarQube)是一个开源平台,用于管理源代码的质量. Sonar 不只是一个质量数据报告工具,更是代码质量管理平台.通过插件机制,So ...

  7. SonarQube(代码质量管理)环境搭建

    继 Centos6.6安装Subversion版本控制工具(Subversion + Apache + jsvnadmin) 后,搭建代码质量管理环境 IP:10.0.210.112 环境:Cento ...

  8. 十分钟搭建和使用sonarqube代码质量管理平台

    前言 Sonarqube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提高开发速度,通过插件形式,可以支持Java.C.C++.JavaScripe等等二十几种编程语言的代码质量 ...

  9. SonarLint(Sonar) 代码质量管理

    一.Sonar是什么? Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量 通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groov ...

随机推荐

  1. System.arrayCopy()和普通数组复制之间的效率差别

    都是System.arrayCopy() 效率高,到底有多高呢,拉出来遛遛就知道了: package JCF.ArrayList; import java.util.Date; public clas ...

  2. 运行带cocoa pods 的项目,遇到的问题是找不到文件,解决办法

    打开终端,进入项目所在的目录,也就是和Podfile在同一目录下,输入以下命令(由于已经有Podfile,所以不需要再创建Podfile):  pod update 过几秒(也许需要十几秒,取决于你的 ...

  3. JavaScript获取一段html片段中a标签的href值

    最近,做项目中有一个需求,页面中有一个文本编辑器,里面写的内容最后生成了html代码片段,在另一个页面需要前一个页面文本编辑器的html代码片段中的a标签的href值,就尝试做了,因为不太熟悉js,所 ...

  4. ENTITYFRAMEWORKCORE 二使用配置文件来配置数据库链接

    首先 配置文件现在已经变成appsettings.json, 先添加一个连接字符串 "ConnectionStrings": { "PWDatabase": & ...

  5. Caffe 源碼閱讀(四) Layer.hpp Layer.cpp

    1.Setup() Layer初始化参数 (1.完成层参数的读入.处理 2.设置底层顶层的shape,在前向传播前完成) InitMutex CheckBolbCounts: LayerSetup:d ...

  6. logcat 基本使用

    adb logcat -c    //清空以前的日志 adb logcat -v time >  d:/sss.log       //将当前日志输出到d盘的sss.log中  sss.log不 ...

  7. 连接linux数据库Oracle时报错ORA-12541: TNS: 无监听程序

    远程服务器的数据库服务未开启,以及监听未打开 连接oracle 启动服务,startup 切换到oracle /bin 目录,cd $ORACLE_HOME/bin 启动监听, lsnrctl sta ...

  8. JS函数输出圆的半径和面积

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. MySql 中游标,事务,终止存储过程方法总结

    最近在项目开发中,有段逻辑处理,需要在网站,app,后台分别运行,这样给后期的维护带来了很大的不方便,容易遗漏app端或者后台,所以讲java代码转换成存储过程,把逻辑处理写在了mysql端,其中遇到 ...

  10. sql指定插入自增长id的数据

    SET IDENTITY_Insert [Tag.V2].[dbo].[Members_EnAccount] ON; insert into [Tag.V2].[dbo].[Members_EnAcc ...