SonarQube代码质量管理工具安装与使用(sonarqube5.1.2 + sonar-runner-dist-2.4 + MySQL5.x)
1. SonarQube安装(sonarqube5.1.2 + sonar-runner-dist-2.4)
1.1 前提条件
1) 已安装Java环境(version:1.7+)
2) 已安装MySQL数据库(version:5.x)
下载SonarQube: http://www.sonarqube.org/downloads/
下载Sonar-Runner: http://repo1.maven.org/maven2/org/codehaus/sonar/runner/sonar-runner-dist/2.4/sonar-runner-dist-2.4.zip
中文补丁包下载:https://github.com/SonarCommunity/sonar-l10n-zh
3) MySQL数据库配置
执行数据库脚本,创建数据库及用户:
CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'sonar' IDENTIFIED BY 'sonar';
GRANT ALL ON sonar.* TO 'sonar'@'%' IDENTIFIED BY 'sonar';
GRANT ALL ON sonar.* TO 'sonar'@'localhost' IDENTIFIED BY 'sonar';
FLUSH PRIVILEGES;
1.2 安装Sonar Server
1) 将下载的sonarqube-5.1.2.zip包解压至D:\sonar\sonarqube-5.1.2;
2) 修改配置文件D:\sonar\sonarqube-5.1.2\conf\sonar.properties,进行配置数据库设置

1.3 启动Sonar
Server服务
Sonar目前支持Linux/Macosx/Solaris/Windows等操作系统。以Windows 32位操作系统为例,目录切换至D:\sonar\sonarqube-5.1.2\bin\windows-x86-32目录(32对应jdk7_32bit 而非windows_32bit),运行StartSonar.bat文件启动服务。

1.4 访问Sonar
Server
访问地址:http://172.20.28.35:9000/
或者 http://localhost:9000/
其中,172.20.28.35为服务器的IP
1.5 Installing SonarQube in Eclipse(安装插件[非必须项],可以先忽略1.1-1.4步骤)
|
Plugin |
3.4 |
3.5 |
|
SonarQube |
3.6+ |
4.2+ |
|
3.7.x, 3.8.x, 4.2.x, 4.3.x, 4.4.x, 4.5.x |
4.2.x, 4.3.x, 4.4.x, 4.5.x |
|
|
Supported Plugins / Languages |
See Features details |
Installation: If
a previous version of Eclipse SonarQube is already installed, you
can update it. Go to Help > Check for Updates.
To install this plugin in your
Eclipse IDE:
Go to Help
> Eclipse Marketplace... and search for "SonarQube"
Detail link: http://docs.sonarqube.org/display/SONAR/Installing+SonarQube+in+Eclipse
2.
Sonar Runner
2.1 安装Sonar Runner
解压sonar-runner-dist-2.4.zip到任意目录,为了方便,将安装包解压到D:\sonar-runner-2.4下。
2.2 配置环境变量
1) 打开“系统属性”对话框,点击“环境变量”,进入环境变量对话框。
2) 在“系统变量(S)”下点击“新建(W)...”,在编辑系统变量对话框中添加SONAR_RUNNER_HOME变量。
3) 在“系统变量(S)”下找到“Path”,点击“编辑(I)...”,在编辑系统变量对话框中“变量值(V):”输入框内容未尾添加、“;%SONAR_RUNNER_HOME%\bin”,点确定。
4) 按下图所示命令进行验证环境变量是否配置成功,如果展示结果如下图所示,则表示配置成功。

2.3 配置Sonar
Runner
编辑D:\sonar-runner-2.4\conf\sonar-runner.properties,配置指定的Sonar Server地址、数据库URL、数据库用户名及密码、Sonar Server用户名及密码

2.4 配置sonar-project.properties
在项目源码的根目录下创建sonar-project.properties配置文件
Multi-module
Project
There are two ways to define a multi-module
structure in SonarQube:
|
|
Using the given |
... with the |
||||||
|
Way #1 Set all the configuration in the properties file in the |
"MyProject/sonar-project.properties"
|
|||||||
|
Way #2 Set the configuration in multiple properties files |
"MyProject/sonar-project.properties"
"MyProject/module1/sonar-project.properties"
"MyProject/module2/sonar-project.properties"
|
Detail link: http://docs.sonarqube.org/display/SONAR/Analyzing+with+SonarQube+Runner
2.5 代码扫描
切换到项目源码根目录,执行以下命令:sonar-runner
扫描结果中出现“EXCUTION SUCCESS”字样则表示代码扫描成功。

2.6 查看代码扫描结果

2.7 补充说明
在实际应用过程中,可能会遇到报JVM空间不够或内存溢出的情况,为了解决此问题,可以按下文所示方法通过修改批处理脚本D:\sonar-runner-2.4\bin\sonar-runner.bat文件即可。
根据实际情况并参照下图所示修改sonar-runner.bat文件中第77行。

3. 案例分析
默认只有java plugin。添加javascript,jsp(web)检测,需下载相关插件
link:http://docs.sonarqube.org/display/PLUG/Web+Plugin
MyProject:
sonar-project.properties内容如下:

Main Dashboard: 主要的信息展示
Duplications: 重复率比重
Complexity:复杂度

Configure widgets:布局控件
SQALE Rating:Software Quality Assessment based on
Lifecycle Expectations Rating 基于生命周期期望的软件质量模型评价
Debt:技术债务(修复所有issues所用的时间代价)
Issues: Blocker/Critical/Major/Minor/Info 问题的级别,依次从高级到低级。

如下图:点击issues 选择Critical级别,右侧会有一个列表,点击文件进入。

在红色箭头处点击展开,会有相关信息提示。

4. 参考文档
1.如何搭建Sonar代码质量管理平台
2.如何使用Sonar Runner V2.3进行代码扫描
4.http://deejay.iteye.com/blog/1901950
SonarQube代码质量管理工具安装与使用(sonarqube5.1.2 + sonar-runner-dist-2.4 + MySQL5.x)的更多相关文章
- SonarQube代码质量管理工具的升级(sonarqube6.2 + sonar-scanner-2.8 + MySQL5.6+)
SonarQube升级注意事项 0. 前提条件 如果之前是使用sonarqube5.2 + sonar-runner-2.4 +MySQL5.5版本或者类似的组合. 安装方法请参照SonarQube代 ...
- SonarQube代码质量管理工具的安装(Linux)
一.安装配置sonar 1.Sonar介绍 Sonar是一个用于代码质量管理的开源平台,用于管理Java源代码的质量.通过插件机制,Sonar 可以集成不同的测试工具,代码分析工具,以及持续集成工具, ...
- SonarQube代码质量管理平台安装与使用
Sonar简介 Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量 通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaS ...
- SonarQube代码质量管理平台安装与使用--转载
原文:http://blog.csdn.net/hunterno4/article/details/11687269 Sonar简介 Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量, ...
- SonarQube代码质量管理平台安装与配置
1.安装说明 操作用户:root 软件下载目录:/root/opt 无root权限时,放到自定义目录即可 ================ 2.预置条件 1.需要JDK1.6+支持: 2.需要Mysq ...
- Linux中 SonarQube代码质量管理平台安装
SonarQube是管理代码质量一个开源平台,可以快速的定位代码中潜在的或者明显的错误. SonarQube安装 1.环境准备 (1)sonarQube 下载地址https://www.sonarqu ...
- SonarQube代码质量管理平台比较好的搭建和使用资料
http://www.voidcn.com/blog/lidujun1028/article/p-3831235.html Sonar (SonarQube)是一个开源平台,用于管理源代码的质量. ...
- SonarQube代码质量管理平台 的安装、配置与使用
SonarQube是管理代码质量一个开放平台,可以快速的定位代码中潜在的或者明显的错误,下面将会介绍一下这个工具的安装.配置以及使用. 准备工作: 1.jdk(不再介绍) 2.sonarqube:ht ...
- SonarQube代码质量管理平台介绍与搭建
前 言 1.SonarQube的介绍 SonarQube是一个管理代码质量的开放平台. 可以从七个维度检测代码质量(为什么要用SonarQube): (1) 复杂度分布(complexity):代码复 ...
随机推荐
- strace命令,read,write
strace + 运行的程序,可以查看程序运行的过程中调用的系统函数 read.write函数常常被称为Unbuffered I/O.指的是无用户及缓冲区.但不保证不使用内核缓冲区.
- Object,equals,toString
一.Object类 说明:Object类是Java中所有的类的直接或者间接的父类(基类). 该类中定义的是所有的类中的都有的的功能. 位置:可以从API中查找. 二.Object类之 equals 方 ...
- 洛谷 P4378 [USACO18OPEN]Out of Sorts S(树状数组求冒泡排序循环次数)
传送门:Problem P4378 https://www.cnblogs.com/violet-acmer/p/9833502.html 要回宿舍休息了,题解明天再补吧. 题解: 定义一数组 a[m ...
- ngrep 比 tcpdump 更方便查看的抓包显示工具
ngrep 是grep(在文本中搜索字符串的工具)的网络版,他力求更多的grep特征,用于搜寻指定的数据包 一: ngrep的安装 CentOS6.2 64位 wget http://nchc.dl. ...
- multidownloadXkcd 多线程抓图
Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...
- brctl创建虚拟网卡详解
brctl创建虚拟网卡详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 很久之前我分享过一篇关于搭建Openvpn的笔记,在笔记的最后我分享了一个脚本,是用来创建虚拟网卡的,今天 ...
- centos7下安装redis的步骤
原贴地址:https://www.cnblogs.com/zuidongfeng/p/8032505.html 我linux服务器上是这样启动的: cd /tool/redis/redis-3.2.8 ...
- Dapper总结(一)---基本CRUD操作
一.dapper是什么 dapper是一款轻量级的ORM(Object Relationship Mapper),它负责数据库和编程语言之间的映射.SqlConnection,MysqlConnect ...
- CodeChef - AMLEX-Poetic word
题目链接 Dhinwaji is an acclaimed poet and likes to play with words and letters. He has bought some sti ...
- UESTC - 1167 一句话题意
---恢复内容开始--- 题目链接:https://vjudge.net/problem/UESTC-1167 请问从n*n的正方形左下角走到右上角且不越过对角线的情况总数模m的结果~ 分析: 还记得 ...