代码质量管理开源平台Sonar

[b]文章已迁移到新地址[/b]

[url]http://blog.dinghz.com/2016/01/05/sonar.html[/url]

[b]Sonar官网[/b]

[url]http://www.sonarqube.org/[/url]

[b]Sonar介绍[/b]

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


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';


[b]Sonar数据库配置[/b]

配置文件:${SONAR_HOME}/conf/sonar.properties


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


[b]中文语言包[/b]

[url]https://github.com/SonarQubeCommunity/sonar-l10n-zh[/url]

maven package


通过maven对sonar-l10n-zh项目进行打包,这里使用的是1.9-SNAPSHOT版本,生成的jar包是sonar-l10n-zh-plugin-1.9-SNAPSHOT.jar,将sonar-l10n-zh-plugin-1.9-SNAPSHOT.jar拷贝到${SONAR_HOME}/extensions/plugins/目录下
启动脚本

启动脚本在${SONAR_HOME}/bin/目录下,请自己选择相应的系统启动脚本进行运行
[b]Web界面地址[/b]

[url]http://127.0.0.1:9000/[/url]

[b]Sonar界面[/b]
[img]http://blog.dinghz.com/images/blogs/621FE648-9E8D-46C0-BA82-A177188F5704.png[/img]

[b]Demo工程[/b]

[url]https://github.com/craneding/sonar-test[/url]

这是我个人写的demo工程,具体的使用请看github的工程说明
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 概述 本文是针对dclock项目进行代码质量分析的报告使用教程。dclock是一个开源的跨平台桌面时钟应用程序,使用C++编写。本文将介绍如何使用SonarQube进行代码质量分析,并对分析结果进行解读和分析。 2. SonarQube介绍 SonarQube是一个开源代码质量管理平台,它提供了一套完整的解决方案,从代码质量分析、缺陷检测到代码重构等。SonarQube可以帮助开发团队发现代码中的问题,并提供修复建议和指导。它支持多种编程语言,包括Java、C/C++、Python等。 3. 分析工具 本文使用的是SonarQube Community Edition 8.9.2,是SonarQube的最新版本。SonarQube支持多种插件,用于对不同编程语言的代码进行分析。本文使用的插件是C++ Community Plugin,用于对C++代码进行分析。 4. 分析步骤 本文将介绍如何使用SonarQube对dclock项目进行代码质量分析,包括以下步骤: 1. 下载和安装SonarQube Community Edition 8.9.2。 2. 启动SonarQube服务器,并访问http://localhost:9000进行登录和配置。 3. 创建一个新的SonarQube项目,用于存储dclock代码分析结果。 4. 下载dclock源代码,使用CMake构建项目,并生成编译器所需的编译命令文件。 5. 使用sonar-scanner命令行工具对dclock项目进行代码质量分析,并将分析结果上传到SonarQube服务器。 6. 在SonarQube服务器上查看分析结果,并分析代码质量问题。 5. 分析结果 分析结果包括代码质量分数、代码质量问题、代码复杂度、代码覆盖率等。以下是dclock项目的代码质量分析结果: 1. 代码质量分数 代码质量分数是SonarQube对代码质量的综合评估,分数越高表示代码越健康。dclock项目的代码质量分数为C,说明代码存在较多的问题。 2. 代码质量问题 代码质量问题是SonarQube检测到的代码缺陷和不规范之处,包括Bug、漏洞、代码重复、代码坏味道等。dclock项目存在较多的代码质量问题,其中包括: - 潜在的内存泄漏问题 - 大量的代码复制和粘贴 - 使用了一些不安全的函数 - 函数的复杂度较高 3. 代码复杂度 代码复杂度是SonarQube对代码结构复杂程度的评估,包括函数的嵌套深度、控制流程复杂度等。dclock项目的代码复杂度较高,其中一些函数的复杂度超过了10,需要进一步优化。 4. 代码覆盖率 代码覆盖率是SonarQube对代码测试覆盖率的评估,包括代码覆盖率和行覆盖率。dclock项目的代码覆盖率为0,说明代码没有进行过测试。 6. 总结 本文介绍了如何使用SonarQube对dclock项目进行代码质量分析,并对分析结果进行了解读和分析。通过分析结果可以发现dclock代码存在较多的问题,需要进一步优化和改进。代码质量分析是开发过程中必不可少的一环,它可以帮助开发人员发现代码中的问题,并提供修复建议和指导,从而提高代码的可维护性和可靠性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值