admin 管理员组

文章数量: 1184232


2023年12月23日发(作者:pathinfo 宝塔 404)

静态代码检查工具Sonar的安装和使用

目录

静态代码检查工具Sonar的安装和使用 ....................................................................................... 1

第一章、Sonar简介 ................................................................................................................ 2

第二章、Sonar原理 ................................................................................................................ 3

第三章、Sonarqube安装 ........................................................................................................ 5

3.1、下载安装包 .............................................................................................................. 5

3.2、 数据库连接方式 ............................................................................................... 5

3.3、启动 .......................................................................................................................... 7

3.4、插件引用 .................................................................................................................. 8

第四章、SonarQube Scanner安装 ........................................................................................ 10

4.1、下载安装 ................................................................................................................ 10

4.2、数据库连接方式 .................................................................................................... 12

4.3、启动并执行代码检查 ............................................................................................ 13

4.4、查看执行结果 ........................................................................................................ 16

4.5、启动失败原因 ........................................................................................................ 18

第一章、Sonar简介

Sonar (SonarQube)是一个开源平台,用于管理源代码的质量。Sonar 不只是一个质量数据报告工具,更是代码质量管理平台。支持的语言包括:Java、PHP、C#、C、Cobol、PL/SQL、Flex 等。

开源中国代码质量管理系统 -> /

主要特点:

• 代码覆盖:通过单元测试,将会显示哪行代码被选中

• 改善编码规则

• 搜寻编码规则:按照名字,插件,激活级别和类别进行查询

• 项目搜寻:按照项目的名字进行查询

• 对比数据:比较同一张表中的任何测量的趋势

第二章、Sonar原理

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

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

图 1. 质量纬度

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

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

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

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

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

图 2. SonarQube 的服务架构

远程客户机可以通过各种不同的分析机制,从而将被分析的项目代码上传到

SonarQube server 并进行代码质量的管理和分析,SonarQube 还会通过 Web

API 将分析的结果以可视化、可度量的方式展示给用户。

第三章、Sonarqube安装

3.1、下载安装包

从官网下载/下载并解压

3.2、 数据库连接方式

3.2.1使用默认数据库

从ties文件可以看出默认情况下是使用H2数据库,所以使用这种方式就不用配置数据库,直接启动即可。如下图:

3.2.2使用oracle方式

以ORACLE XE11g版本为例

1、 配置ties,去掉相关“#”号即可,如下图:

2、 替换oracle驱动jar包。默认情况下使用的是,如下图:

需要替换成ORACLE XE11g版本的驱动包。可以从Oracle安装目录oracleproduct11.2.0serverjdbclib下拷贝。如果直接使用,那么sonar会启不动。

替换即可:

3、 配置数据库连接串,取消相关oracle配置注释即可:

3.3、启动

点击启动即可

3.4、插件引用

将插件jar包下载,放入Plugins文件夹下。如下面用了中文语言包。

备注:有点插件不支持,启动的时候因为放入的插件包导致启动失败。

第四章、SonarQube Scanner安装

4.1、下载安装

(1) 从官网下载/下载

(2) 配置环境变量

4.2、数据库连接方式

1、使用默认数据库方式

不需要配置ties,默认的使用H2数据库

2、使用oracle方式

取消注释,并配置oracle连接串如下:

备注:从注释“Global database settings (not used for SonarQube 5.2+)”可以看出5.2以

上版本后,不需要配置数据库。如果配置了数据库也会无效,不支持数据库,只需配置sonarqube server的url,如下图运行日志。

4.3、启动并执行代码检查

(1)在项目根目录下新建ties文件

并配置代码如下:

(3) 切换到项目工程目录下

D:

cd D:HBGMStrunkdev1.0codeframework

(4) 执行sonnar-runner命令开始检查代码

执行成功:

4.4、查看执行结果

(1) 登录sonar的web server服务器

127.0.0.1:9000/

(2) 点击项目名

(3) 查看代码检查结果

4.5、启动失败原因

(1)未启动sonarqube导致启动Scanner失败

第五章、Jenkins集成sonar


本文标签: 代码 质量 数据库 启动 方式