开源静态分析工具,用接近源码的模式查找代码缺陷并执行编码规范,支持 30 多种语言。
- Star
- 11,087
- Fork
- 2,236
- 未关闭 Issue
- 1
- 最近提交
- 前天
这是什么?
SonarQube 是一个静态分析平台,用于检查源代码中的缺陷、安全漏洞、安全热点和结构性问题,并说明问题原因与修复方法。分析结果通过 Web 仪表盘展示,也可在 IDE、Pull Request 和 CI 流程中查看。
本仓库是免费开源的 SonarQube Community Build 版本的源码。它关注新代码的质量,并通过质量门禁(通过/失败的检查)在变更合并前统一执行标准。社区版支持的语言数量少于商业版。
项目使用 Java 编写,通过 Gradle 构建,需要 Java 21。构建后可得到发行包,并可在 Linux、macOS 和 Windows 上通过自带脚本启动服务。
核心功能
- 01检测源代码中的缺陷、可靠性问题和安全漏洞。
- 02标记影响代码可维护性和结构的问题。
- 03在 Pull Request 和流水线中对新代码执行质量门禁。
- 04为每个问题说明风险原因并给出修复建议。
- 05以自托管服务器形式运行,提供 Web 仪表盘。
适用场景
- 在 CI 流水线中加入自动化的代码质量与安全检查。
- 在自托管服务器上跟踪团队多个代码仓库的质量趋势。
- 在合并前审查 Pull Request 中的新代码。
快速上手
- 1
使用 Gradle 构建项目(需要 Java 21 和 Git)
./gradlew build - 2
解压 sonar-application/build/distributions/ 中的发行包,并在 Linux 上启动服务器
bin/linux-x86-64/sonar.sh start
使用前须知
- 从源码构建需要 Java 21 和本地 Git。
- 社区版支持的语言少于商业版。
- SonarSource 以外的功能贡献通常不被接受,一般只合并小修复。
标签
常见问题
- sonarqube 是什么?
- 自托管的代码质量与安全平台,扫描项目中的缺陷、漏洞和可维护性问题,并可在 CI 流程中设置质量门禁。 SonarQube 是一个静态分析平台,用于检查源代码中的缺陷、安全漏洞、安全热点和结构性问题,并说明问题原因与修复方法。分析结果通过 Web 仪表盘展示,也可在 IDE、Pull Request 和 CI 流程中查看。
- sonarqube 可以免费使用吗?用的什么许可证?
- sonarqube 以 LGPL-3.0 许可证开源。用于商业产品前,请先确认许可证条款。
- sonarqube 还在维护吗?
- 活跃维护中。sonarqube 最近一次提交是在 2026年10月17日。
- sonarqube 适合用来做什么?
- 在 CI 流水线中加入自动化的代码质量与安全检查。 在自托管服务器上跟踪团队多个代码仓库的质量趋势。 在合并前审查 Pull Request 中的新代码。
- sonarqube 怎么安装和运行?
- 使用 Gradle 构建项目(需要 Java 21 和 Git): ./gradlew build 解压 sonar-application/build/distributions/ 中的发行包,并在 Linux 上启动服务器: bin/linux-x86-64/sonar.sh start
- 在哪里获取 sonarqube?
- 源代码和安装说明在 GitHub 上:https://github.com/SonarSource/sonarqube
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
1.7万1112CLGPL-2.1更新于 7小时前
一款扫描 React 代码的命令行工具与智能体技能,检查状态、性能、安全、无障碍和可维护性问题。
1.5万490TypeScriptOther更新于 14小时前
基于 Go 的轻量 Dockerfile 检查工具,提供 60 多条最佳实践规则、质量评分和安全检查。
2257GoApache-2.0更新于 9个月前
Ghidra 是美国国家安全局开源的软件逆向工程框架,提供反汇编、反编译、图形化分析和脚本能力。
9.1万1万JavaApache-2.0更新于 21小时前
一款命令行工具,用于在 Git 仓库、文件和标准输入中检测密码、API 密钥、令牌等敏感信息。
3万2391GoMIT更新于 20天前
面向 Windows、macOS 和 Linux 的桌面客户端,为 Dropbox、Google Drive、OneDrive 等同步云盘中的文件提供客户端加密。
1.6万1538JavaGPL-3.0更新于 4天前