100下载站:绿色免费软件下载站! 软件分类|软件专题|安卓下载|资讯教程

您当前所在位置:首页 > 软件分类 > 编程开发 > 编程工具 > sonarqube代码质量管理平台工具 v5.1.2 官方版

sonarqube代码质量管理平台工具v5.1.2 官方版

  • 软件大小:84.8MB
  • 软件语言:简体中文
  • 软件类型:国外软件
  • 软件授权:免费版
  • 更新时间:2016-10-01
  • 软件类别:编程工具
  • 软件官网:
  • 应用平台:WinXP/win7/win8/
软件星级

软件介绍其它版本相关专题相关文章网友评论下载地址

SonarQube是一个优秀的用来管理代码质量的开放平台,它支持的语言包括:Java、PHP、C#、C、Cobol、PL/SQL、Flex 等。SonarQube软件(以前称为“Sonar”)是Codehaus的一个开源项目。不只是一个质量数据报告工具,更是代码质量管理平台。

它可以通过使用插件机制与 eclipse 和 JIRA 等其他外部工具集成,从而实现了对代码的质量的全面自动化分析和管理。本文首先讨论了SonarQube 3.6 的基本工作原理与安装流程;其次分析了采用 SonarQube 3.6 的三种不同方法来对不同语言和架构的项目进行代码质量管理的基本流程;最后对笔者在实际使用过程中遇到的问题进行了总结,并给出了相应的解决方案。

sonarqube代码质量管理平台工具

SonarQube 的工作原理介绍

SonarQube 并不是简单地将各种质量检测工具的结果(例如 FindBugs,PMD 等)直接展现给客户,而是通过不同的插件算法来对这些结果进行再加工,最终以量化的方式来衡量代码质量,从而方便地对不同规模和种类的工程进行相应的代码质量管理。

SonarQube 在进行代码质量管理时,会从图 1 所示的七个纬度来分析项目的质量。

图 1. 质量纬度

图 1. 质量纬度

SonarQube 可以支持 25+ 种编程语言,针对不同的编程语言其所提供的分析方式也有所不同:

对于所有支持的编程语言,SonarQube 都提供源了代码的静态分析功能;

对于某些特定的编程语言,SonarQube 提供了对编译后代码的静态分析功能,比如 java 中的 class file 和 jar 和 C# 中的 dll file 等;

对于某些特定的编程语言,SonarQube 还可以提供对于代码的动态分析功能,比如 java 和 C# 中的单元测试的执行等。

SonarQube 平台的整体架构如图 2 所示:

图 2. SonarQube 的服务架构

图 2. SonarQube 的服务架构

远程客户机可以通过各种不同的分析机制,从而将被分析的项目代码上传到 SonarQube server 并进行代码质量的管理和分析,SonarQube 还会通过 Web API 将分析的结果以可视化、可度量的方式展示给用户。

SonarQube3.6 的安装

软件及硬件的要求

SonarQube3.6 的安装通常需要满足一定的软硬件条件,具体要求如下所示:

1. Server 要求

Web server 最少需要 500MB 的内存空间,推荐内存空间大小 2GB。Sonar 在进行代码质量分析时,通常大约每 1 KLOC 需要存储 350KB 左右的数据,所以要尽量为 SonarQube3.6 的 web server 提供大的内存。

2. Database 要求

尽管 SonarQube3.6 本身自带嵌入的 Derby 数据库,但是由于 Derby 比较简单,所以在生产环境中强烈推荐安装相应的企业版数据库,SonarQube3.6 支持的数据库包括: MySQL 5.x+、Oracle10g+、PostgreSQL 9.x 和 MS SQLServer 2005 and 2008,推荐使用 MySQL。目前 SonarQube3.6 还不支持 DB2,但在后续版本中可能会提供对 DB2 的支持。

3. Browser 要求

SonarQube3.6 支持大多数的浏览器,包括 Firefox、Internet Explorer 7.x and 8.x and chromed 等,推荐使用 Firefox。

SonarQube安装步骤

SonarQube3.6 的安装包可以从 SonarQube 的官方网站 (http://www.sonarqube.org/) 下载。总的来说,它的安装过程可以分为以下六个步骤:

1. 获取公司的法律授权

本步骤主要取决于公司的规定,如果公司对于在本公司机器上安装的软件有法律要求,那么尽管 SonarQube 是开源的,但是也还是要获得公司相关法律部门的授权,然后再进行安装。

2. 创建数据库

创建数据库时,按照相应数据库的安装说明进行安装即可,安装成功后,需要手动创建一个名为“sonarqube”的用户和一个 empty schema --“sonarqube”,并赋予该用户在相应 schema 上的 create、update 和 delete 对象的权限,同时数据库的字符集设定为“UTF-8”,示例的 sql 语句如下:

点击查看代码清单

3. 安装 Sonar 的服务器

将所下载的 SonarQube3.6 压缩包解压即可,注意要与所在的操作系统平台匹配。

4. 配置数据库

如果没有使用 sonarQube3.6 自带的 derby 数据库,则此时需要编辑 sonarqube3.6 解压目录 \conf\sonar.properties 文件,对数据库的访问参数进行配置。

数据库配置项和配置示例如图 3 和图 4 所示:

图 3. Sonar.properties 文件中的数据库配置项

图 3. Sonar.properties 文件中的数据库配置项

图 4. Sonar.properties 文件中的 MySQL 数据库配置

图 4. Sonar.properties 文件中的 MySQL 数据库配置

如果是 Oracle 数据库,则需要将 JDBC 的 driver 拷贝到 sonarqube3.6 解压目录 \extensions\jdbc-driver\[your database]。此外,对于其他所支持的数据库的 driver,sonarqube 也已经提供。

5. 启动 SonarQube3.6 服务器

启动 SonarQube3.6 服务器的方法取决于所使用的安装平台和 webserver。

常见的启动方式有图 5 所示的几种:

图 5. SonarQube 启动方式

图 5. SonarQube 启动方式

6. 插件下载与安装

SonarQube3.6 服务器成功启动后,登陆默认的 webserver: IP:9000/ ,其中 IP 为 sonarqube3.6 安装的服务器网络地址,用户名和密码为默认的 admin/admin。登陆成功后点击 configuration 菜单按钮,然后选择 update center 进行插件的下载与安装,如图 6 所示:

图 6. Plugin 下载与安装

图 6. Plugin 下载与安装

注意:如果 sonarqube server 所在的机器不能访问外网,那么此时就需要先在另一台能够访问外网的机器上下载所需的所有插件,然后将下载的插件拷贝到 sonarqube server 所在机器的 sonarqube3.6 解压目录 \extensions\plugins 目录内,然后重启 Sonarqube3.6。下载 Sonarqube 插件的官方地址为:http://docs.codehaus.org/display/SONAR/Plugin+Library/,下载时需注意插件板本与 sonarqube3.6 的兼容问题。

回页首SonarQube3.6 代码质量分析

当使用 SonarQube3.6 对某一个项目进行代码质量管理时,通常可以采用三种不同的方法来发起代码分析,分别为 Analyzing with SonarQube Runner、,Analyzing with SonarQube Ant Task 和 Analyzing with Maven 方法。这三种方法的主要区别是 , 它们分别适用于不同架构和组织形式的项目,并且其相应的配置文件的写法也不尽相同。

下面将分别介绍这三种方式。

Analyzing with SonarQube Runner

通常我们会推荐使用 SonarQube Runner 这种方式,因为该方法适用于所有不同架构的项目,包括没有使用任何源代码管理工具的项目形式,以及使用各种不同代码管理工具(SVN、Git、ClearCase 等)和编译工具(ant,maven)的项目形式,它都能够适用。在使用该方式进行分析时步骤如下:

1. 首先需要下载与 SonarQube3.6 Server 兼容的 sonar-runner 客户端并对其进行解压;下载地址为http://repo1.maven.org/maven2/org/codehaus/sonar/runner/sonar-runner-dist/2.3/sonar-runner-dist-2.3.zip

2. 在被分析项目代码的根目录下,创建并配置 sonar-project.properties,内容如图 7 所示:

图 7. Sonar-p

图 7. Sonar-project.properties 文件示例

图 7 中的 sonar.projectName 为项目在 sonar server 上显示的名称,其值要求唯一。sonar.source 是用于指定待分析的代码位置的。sonar.language 用于指定待分析的项目代码语言。如果项目包含多个模块,则该配置文件应按照图 8 所示编辑:

图 8. 多模块项目的 Sonar-project.properties 示例

图 8. 多模块项目的 Sonar-project.properties 示例

3. 在解压的 soanr-runner 客户端的 sonar-runner\config 目录下,编辑 sonar-runner.properties 文件 , 示例如图 9 所示:

图 9. Sonar-runner.properties 示例

图 9. Sonar-runner.properties 示例

请注意,图 7、图 8 以及图 9 中的相关配置项 ( 如 host.url 和 jdbc.url 等 ) 都要与图 4 的 sonar.properties 文件中的相关配置项保持一致。

4. 打开命令行,在被分析的项目目录下 , 运行 sonar-runner 命理分析项目代码。

Analyzing with SonarQube Ant Task

本方法主要适用于使用 Ant 工具进行构建、编译、打包和测试的项目,使用 Ant Task 分析代码时,步骤如下:

1. 下载 SonarQube Ant Task 并安装,下载地址如下: http://repository.codehaus.org/org/codehaus/sonar-plugins/sonar-ant-task/2.1/sonar-ant-task-2.1.jar

2. 在被分析项目代码的根目录下,创建并配置 build.xml 文件。示例如图 10 所示:

图 10. Build.xml 配置示例

图 10. Build.xml 配置示例

Build.xml 中的相关配置项 ( 如 jdbc.username 和 jdbc.url 等 ) 要与图 4 所示的 sonar.properties 文件中的相关配置项保持一致;同时可以看出,在 build.xml 文件中既包含了被分析项目代码的相关信息,也包含了其所连接的对应 SonarQube Server 的信息。

3. 在命令行中,切换到代码根目录,使用命令 “ant sonar”进行代码分析。

Analyzing with Maven

当项目使用 Maven 工具管理和构建时,则该项目就适用于本方法。使用 Maven 分析代码时,步骤如下:

1. 下载、安装并配置 Maven,配置文件为 setting.xml,配置如图 11 所示:

图 11. Setting.xml 配置示例

图 11. Setting.xml 配置示例

Setting.xml 中的相关配置项 ( 如 host.url 和 jdbc.url 等 ) 要与图 4 所示的 sonar.properties 文件中的相关配置项保持一致,主要用于配置其所连接的 SonarQube 服务器的信息。

2. 在待分析项目代码的根目录下,创建并配置 prom.xml 文件,示例如图 12 所示,该配置文件用于设定带分析代码的相关信息,包括代码目录等。

图 12. Prom.xml配置示例

图 12. Prom.xml配置示例

3. 打开命令行窗口,切换到项目的根目录,然后执行“mvn sonar:sonar”来分析项目代码的质量。

其他版本下载

下载地址

  • sonarqube代码质量管理平台工具v5.1.2 官方版

网友评论