SonarQube安装、扫描步骤

admin 2025年5月12日19:34:33评论5 views字数 2506阅读8分21秒阅读模式

SonarQube为静态代码检查工具,采用B/S架构,帮助检查代码缺陷,可以快速地定位代码中潜在的或者明显的错误,改善代码质量,提高开发速度。通过插件形式,可以支持Java、C、C++、JavaScripe等二十几种编程语言的代码质量管理与检测。

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

在公司中,一般是把SonarQube布置在服务器端,当开发人员提交代码时,Jenkins触发SonarQube进行代码检查。但是对于开发人员来说,可以在IDEA中可以安装SonarQube插件,并且在本地或者局域网服务器上安装SonarQube服务器。这样就可以通过插件连接在本地使用SonarQube进行代码检查。

SonarQube可以从七个维度检测代码质量:
  (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):找出循环,展示包与包、类与类之间的依赖、检查程序之间耦合度

安装SonarQube

  • 搭建分两大步:服务端跟客户端,本地开发只需安装SonarLint插件即可。

服务端

  • 前提条件:准备好 Java 环境和 MySql 数据库

一、Windows系统安装

1、下载 SonarQube,然后解压:http://www.sonarqube.org/downloads/
2、在mysql中新建一个
sonar数据库
3、修改
~/conf/sonar.properties配置文件,在Mysql节点下添加数据库信息:

sonar.jdbc.url=jdbc:mysql://127.0.0.1:3306/sonar?useUnicode=true&characterEncoding=utf8&rewriteBatchedStatements=true&useConfigs=maxPerformance
sonar.jdbc.username=root
sonar.jdbc.password=xxxx
sonar.sorceEncoding=UTF-8
# 登录Sonarqube的用户名和密码
sonar.login=admin
sonar.password=admin

4、启动SonarQube服务
  进入
~/bin/OS目录,OS对应自己的操作系统,比如我选择 ~/bin/windows-x86-64/StartSonar.bat,运行该程序启动服务,在启动过程中会初始化数据库信息。
  浏览器输入
localhost:9000访问SonarQube。
5、配置中文
① 登录,输入
admin/admin
SonarQube安装、扫描步骤
② 按照如下步骤安装中文包
SonarQube安装、扫描步骤
③ 重启服务,之后就是中文界面啦
SonarQube安装、扫描步骤 ④ 更新GitJava分析器
SonarQube安装、扫描步骤 ⑤ 新建一个项目
SonarQube安装、扫描步骤 6、代码规则里可以配置检查规则
SonarQube安装、扫描步骤

二、Linux系统安装

建议采用Docker Compose方式进行处理,这里不做具体阐述。提供一个Docker Compose文件, docker-compose.yml 可自行安装调试。

操作使用可参考上面Windows安装章节内容

配置SonarQube进行代码扫描

  • SonarQube内网地址:http://172.20.0.201:9000

IDEA中开启本地SonarQube规范检查

  1. 按照如下步骤安装SonarLint插件,安装完成之后重启IDEA
    SonarQube安装、扫描步骤

  2. 配置关联sonar服务端

    全局设置

  • Settings -> Other Settings -> SonarLint General Settings

  • 添加sonar服务http://172.20.0.201:9000

    项目设置

  • Settings -> Other Settings -> SonarLint Project Settings

  • 选择刚才配置的sonar服务,关联到本项目。

  • 关联sonar服务之后就会共享服务器上的代码规则。在idea下面一栏找到sonarLint,可以分析单个文件,也可单独分析未提交的代码。

  1. 项目右键使用SonarLint分析
    SonarQube安装、扫描步骤

  2. Report里可以看到分析报告,右边可以看到应用的规则,以及给出的解决方式
    SonarQube安装、扫描步骤

  3. 对应的审查类型及严重程度
    SonarQube安装、扫描步骤

Eclipse中开启本地SonarQube规范检查

  1. 按照如下步骤安装SonarLint插件,安装完成之后重启IDEA
    SonarQube安装、扫描步骤

  2. 配置关联sonar服务端

  • Window -> Show View -> Other SonarQube安装、扫描步骤

  • 创建于SonarQube服务器链接 SonarQube安装、扫描步骤

  • 设置服务器地址 SonarQube安装、扫描步骤

  • 选择认证模式,可以使用用户名密码认证或者Token认证,Token需要在服务器用户信息界面中获取,这里使用Token进行认证 SonarQube安装、扫描步骤

  • 输入Toeken信息 SonarQube安装、扫描步骤

  • 自定义连接名称 SonarQube安装、扫描步骤

  • 完成连接设置 SonarQube安装、扫描步骤

  1. 绑定sonar平台项目

  • 在Eclipse本地项目目录右键 SonarLint -> Bind to a SonarQube Projects SonarQube安装、扫描步骤

  1. 代码扫描

  • 在要检查的文件上面右键,选择 SonarLint -> Analyze进行扫描

相关内容:

SonarQube快速上手使用集成gitlab流水线控制

SonarQube的Web API和plugin API

SonarQube和Fortify的区别对比

SonarQube安装、扫描步骤

原文始发于微信公众号(华克斯):SonarQube安装、扫描步骤

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年5月12日19:34:33
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   SonarQube安装、扫描步骤https://cn-sec.com/archives/4055664.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息