百度总监10分钟带你快速入门Sonar!
发布日期:2021-05-18 12:32:13 浏览次数:20 分类:精选文章

本文共 2055 字,大约阅读时间需要 6 分钟。

SonarQube入门指南:从安装到代码扫描

1. SonarQube的概念

SonarQube是一款开源的自动化代码审查工具,专注于发现代码中的错误、漏洞和潜在问题。它能够与现有的开发流程无缝集成,支持在项目分支和拉取请求中进行持续代码检查。这对于开发团队来说,是确保代码质量和安全性的重要工具。

2. 安装SonarQube服务器

在开始使用SonarQube之前,需要先安装PostgreSQL数据库和SonarQube服务。以下是通过Docker的安装步骤:

安装PostgreSQL

使用Docker运行PostgreSQL数据库:

docker run -it --name postgres --restart always -e POSTGRES_PASSWORD='postgres' -e ALLOW_IP_RANGE=0.0.0.0/0 -v /opt/postgres/data:/var/lib/postgresql -p 5432:5432 -d postgres

启动成功后,可以使用账号postgres/postgres登录测试。

安装SonarQube服务

运行以下命令安装SonarQube:

docker run --rm --name sonarqube \
-p 9000:9000 \
-e SONAR_JDBC_URL=jdbc:postgresql://$DB_HOST:$DB_PORT/postgres \
-e SONAR_JDBC_USERNAME=postgres \
-e SONAR_JDBC_PASSWORD=postgres \
-v sonarqube_data:/opt/sonarqube/data \
-v sonarqube_extensions:/opt/sonarqube/extensions \
-v sonarqube_logs:/opt/sonarqube/logs \
sonarqube

安装完成后,访问http://$DB_HOST:9000,第一次登录时请修改默认密码为强密码。

3. 集成Maven项目到SonarQube

为了将Maven项目集成到SonarQube,可以使用SonarQube Maven插件。插件配置如下:

org.sonarsource.scanner.maven
sonar-maven-plugin
3.5.0.1254

两种编译方式

在命令行编译

使用以下命令进行编译和代码扫描:

mvn clean verify sonar:sonar -Dmaven.test.skip=true -Dsonar.host.url=http://$SONAR_HOST:9000 -Dsonar.login=admin -Dsonar.password=admin123

在pom.xml中配置

在项目的pom.xml中添加以下配置:

sonar
true
jdbc:postgresql://$DB_HOST:$DB_PORT/postgres
org.postgresql.Driver
postgres
postgres
http://$SONAR_HOST:9000
admin
admin123

提示

确保项目的Maven插件代理设置正确,避免代理问题影响代码扫描。

4.代码扫描结果解释

Bugs

代码中潜在的错误和异常,例如空指针、越界等都能被SonarQube检测到。

Vulnerabilities

代码中存在的安全漏洞数,例如SQL注入、XSS等。

Hotspots Reviewed

代码中被标记为安全热点的部分,需要重点关注。

Coverage

代码覆盖率,表示程序中被测试的代码比例,通常用于衡量单元测试的质量。

通过以上步骤,您可以成功安装并配置好SonarQube,实现代码质量管理和安全扫描。

上一篇:详谈软件测试模型与软件测试流程5个阶段
下一篇:这些运维发展方向及系统运维技能都不了解,怎么能吃透Linux??

发表评论

最新留言

感谢大佬
[***.8.128.20]2025年04月26日 04时15分17秒