Sonarqube 从哪里收集数据?

Where does Sonarqube collects data from?

最后一天,我在我的 java 项目上为 运行 声纳配置了一个 jenkins 作业。我在工作中配置了声纳和 jacoco 插件。 Sonar 抛出一些错误,我的系统管理员要求我从作业中删除 jacoco 插件配置。我删除了,现在声纳说找不到 cobertura.xml。 所以我很想知道声纳是否已经对 运行 jacoco 或 cobertura 任务进行了分析,还是 运行 自己进行了覆盖分析?

简短回答:通常,通过阅读在任何 sonarQube 工作之前生成的覆盖率报告,将覆盖率导入到 SonarQube。

更长的答案:从历史上看(阅读,大约两年前),SonarQube 曾经尝试 运行 java 的覆盖工具。这是维护每个用例的噩梦,因此现在由开发人员向 SonarQube 提供覆盖率报告,该报告将仅对这些数据起作用(将它们链接到源、计算指标、很好地显示它们)。

对于您的情况,这意味着您很可能在 SQ 实例上安装了 cobertura 插件,它正在寻找要导入的报告。