SonarQube7.4和sonar-Scanner-3.2.0环境搭建

SonarQube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,改善代码质量,提升开发速度,经过插件形式,能够支持Java、C、C++、JavaScripe等等二十几种编程语言的代码质量管理与检测。mysql

经过客户端插件分析源代码,sonar客户端能够采用IDE插件、Sonar-Scanner插件、Ant插件和Maven插件方式,并经过各类不一样的分析机制对项目源代码进行分析和扫描,并把分析扫描后的结果上传到sonar的数据库,经过sonar web界面对分析结果进行管理web

能够从七个维度检测代码质量:sql

(1)复杂度分布(complexity):代码复杂度太高将难以理解
(2) 重复代码(duplications):程序中包含大量复制、粘贴的代码而致使代码臃肿,sonar能够展现源码中重复严重的地方数据库

(3) 单元测试统计(unit tests):统计并展现单元测试覆盖率,开发或测试能够清楚测试代码的覆盖状况
(4) 代码规则检查(coding rules):经过Findbugs,PMD,CheckStyle等检查代码是否符合规范
(5) 注释率(comments):若代码注释过少,特别是人员变更后,其余人接手比较难接手;若过多,又不利于阅读
(6) 潜在的Bug(potential bugs):经过Findbugs,PMD,CheckStyle等检测潜在的bug编程

(7) 结构与设计(architecture & design):找出循环,展现包与包、类与类之间的依赖、检查程序之间耦合度windows

SonarQube搭建步骤

  1. 安装jdk1.8,注意:SonarQube版本不同对jdk要求是不同的。

  2. 安装MySQL 5.7.20环境并建立实例,注意:SonarQube支持5.6以上版本

  3. 下载SonarQube7.4和sonar-scanner-3.2.0 

  4. 配置SonarQube与mysql数据库关联

  5. 本人搭建机器:windows server2008 R2 64位

配置文件:sonarqube-7.4\conf\sonar.properties架构

添加以下数据库配置:编程语言

sonar.jdbc.url=jdbc:mysql:///sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=root
sonar.jdbc.password=123456
sonar.sorceEncoding=UTF-8
sonar.login=admin
sonar.password=admin工具

配置完成后启动便可,启动文件:sonarqube-7.4\bin\windows-x86-64\StartSonar.bat 单元测试

启动完成后显示以下信息证实启动成功。

访问连接:http://localhost:9000/,默认用户名秘密:admin/admin

以下图,能够选择对应的中文插件。

接下来配置sonar-scanner-3.2.0与mysql关联及相关环境变量

sonar-scanner-3.2.0\conf\sonar-scanner.properties

文字内容:

#----- Default SonarQube server
sonar.host.url=http://localhost:9000

#----- Default source code encoding
sonar.sourceEncoding=UTF-8

sonar.jdbc.url=jdbc:mysql:///sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=root
sonar.jdbc.password=123456

环境变量配置:


文字内容:

SONAR_SCANNER_HOME

scanner安装目录:

C:\Users\sonar-scanner-3.2.0

Path环境变量添加:

;%SONAR_SCANNER_HOME%\bin;

配置完成后,管理员身份运行:sonar-scanner -v 查看是否安装成功。

接下来在须要扫描的项目根录下建立sonar-project.properties文件,以下:

最后:cmd管理员执行sonar-scanner便可。

登陆sonarQube查看:

相关文章
相关标签/搜索