代码扫描利器sonarqube

sonar的作用

1、代码质量和安全扫描和分析平台。
2、多维度分析代码:代码量、安全隐患、编写规范隐患、重复度、复杂度、代码增量、测试覆盖率等。
3、支持25+编程语言的代码扫描口分析,包含javapythonC#javascriptgoC++等。
4、涵盖了编程语言的静态扫描规则:代码编写规范+安全规范。
5、能够与代码编辑器、CI/CD平台完美集成。
6、能够与SCM集成,可以直接在平台上看到代码问题是由哪位开发人员提交。
7、帮助程序猿写出更干净、更安全的代码。

sonar的组成

sonar静态代码扫描由2部分组成:sonarQube平台,sonar-scanner扫描器。
sonarQube:web界面管理平台。
1)展示所有的项目代码的质量数据。
2)配置质量规则、管理项目、配置通知、配置SCM等。
sonarScanner:代码扫描工具。
专门用来扫描和分析项目代码。支持20+语言。
代码扫描和分析完成之后,会将扫描结果存储到数据库当中,在sonarQube平台可以看到扫描数据。

扫描项目-(java项目)

1、获取1份java项目源代码(svn/git上下载均可)

2、项目代码根目录下添加sonar-project.properties

3、文件内容如下:

  • sorfar.projectKey=在sonarQube上的实例键名(唯一)
  • sonar.projectName=在sonarQube上的项目名称
  • sonar.projectVersion=1.0(项目版本号)
  • sonarsources=.(java源代码目录指定)
  • sonar.sourceEncoding=UTF-8(编码格式指定)
  • sonar.language=java(指明只扫描ava语言)
  • sonar.java.binaries=target/classes(class文件的目录)

4、在项目代码根目录下,运行命令:sonar-scanner

5、等待扫描完成。

配置文件

sonar默认的代码规则

原文地址:https://www.cnblogs.com/Uni-Hoang/p/14979906.html