大家好,我是树哥!
无论是架构师还是研发经理,代码质量都是必须要关注的重点。Sonar(没错,是 Sonar,不是 SonarQube)是一个用于代码质量管理的开源平台,用于管理代码的质量。
它通过插件形式可以支持二十几种语言的代码质量检测,通过多个维度的检查了快速定位代码中潜在的或者明显的错误。千里之行始于足下,今天就让我带大家用一个简单的例子,看看怎么使用 SonarQube 进行代码质量管理。
基础概念
SonarQube
SonarQube 是 Sonar 的服务端,相当于一个 web 服务器中的 tomcat,用来发布应用,在线浏览分析等。
Sonar Scanner
Sonar Scanner 是对源码进行扫描的工具,它可以将结果保存到数据库以便用上面的 SonarQube 进行分析。关于 Sonar Scanner 更多的内容,见官方文档:Analyzing source code overview https://docs.sonarqube.org/latest/analyzing-source-code/overview/
环境配置
JDK 配置
SonarQube 最新版本需要 JDK11 以上,需要先配置好 JDK 开发环境。配置好之后再命令行运行 java -version
查看,如果运行没报错说明配置成功,如下代码所示。
$ java -version
java version "17.0.6" 2023-01-17 LTS
Java(TM) SE Runtime Environment (build 17.0.6+9-LTS-190)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.6+9-LTS-190, mixed mode, sharing)
Maven 配置
后续将会使用 Sonar Scanner for Maven 来分析项目,因此需要有安装 Maven 并配置好对应的环境变量。配置好之后运行 mvn -version
查看,如果运行没报错说明配置成功,如下代码所示。