Agent Skills
返回列表
💻

SonarQube 代码分析

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/sonarqube-code-analysis。

技能介绍

要解决的问题

在多人协作的代码仓库中,提交到主分支的代码常常带着隐藏缺陷:重复逻辑、潜在空指针、缺少边界检查的分支,以及无人维护的遗留路径。人工 Review 只能看到局部,难以对每次提交保持统一标准。SonarQube 的价值在于把静态分析规则固化成流水线里可重复执行的检查,让风格与缺陷在合并前就暴露出来。

工作原理与核心步骤

该技能封装了构建和运行 SonarQube 分析环境所需的关键步骤,核心依赖与流程如下:

  • 基础依赖:必须安装 Java 17 和 npm,用于编译后端代码和构建前端资源。
  • 项目搭建:按照上游推荐的路径执行 yarn build 和 yarn generate-translation-keys,生成必要的翻译键值。
  • UI 修改集成:若改动涉及 UI 层,需单独克隆 sonarqube-webapp 仓库进行本地构建,并通过设置 WEBAPP_BUILD_PATH 环境变量将前端产物与主仓库集成。
  • 测试与规范:项目依赖 Native Git,并在每次 Pull Request 时通过 Travis 执行完整测试,确保符合代码规范。

适用边界与注意点

该技能主要面向需要深度定制或贡献 SonarQube 源码的工程师,而非仅仅想要扫描自己业务代码的普通用户。在使用过程中需要注意以下几点:

  • 环境依赖:基础环境必须安装 Native Git 并确保其在 PATH 中可用。
  • 跳过测试:如果你只是想在本地跑一次代码扫描而不想运行繁琐的测试,可以在 gradle 命令后追加 -x test 参数。
  • 构建顺序:对于 UI 相关的改动,务必注意前端仓库与主仓库的构建顺序和环境变量传递,否则很容易导致构建失败。

使用场景

  • 准备拉取 SonarQube 源码,需要在本地配置 Java 17 和 npm 进行首次编译。
  • 修改了 SonarQube 前端代码,需要克隆 webapp 仓库并通过 WEBAPP_BUILD_PATH 集成。
  • 提交 Pull Request 前,在本地通过 Travis 跑完整测试用例来验证代码规范。
  • 只想在本地快速编译生成前端产物,需要使用 gradle 命令并跳过测试流程。

适合人员

  • 准备为 SonarQube 贡献代码的开源开发者,需要一套标准的本地构建流程。
  • 负责维护企业私有 SonarQube 实例的后端工程师,需要自定义静态分析规则。
  • 处理 SonarQube 前端依赖与 UI 集成的前端工程师,关注多仓库构建顺序。
  • 接入 Travis CI 流水线的 DevOps 工程师,需要确保每次 PR 的测试通过率。