如何从 2 台扫描仪获取 SonarQube 中的合并项目结果?

How to get merged project results in SonarQube from 2 scanners?

我们在项目中通过 Jenkins 使用 SonarQube Scanner for MSBuild 和默认的 SonarQube Scanner。这两个扫描器是从不同的 jenkins 作业执行的。 .net 代码的一项工作和 java & typescript 的默认扫描仪。

作为项目版本,使用 git 提交哈希。即使使用相同的提交哈希,两个扫描器的结果似乎也会相互覆盖。 我们要么只有 C# 结果,要么只有 java / ts 结果。

我们如何在一个 SQ 项目中获得合并结果?

SonarQube 版本 5.6

这是不可能合并一个项目的分析报告的。

从技术上讲,这可能只执行 1 个同时执行 .NET 部分和 Java/JavaScript 部分的 SonarQube 分析就可以实现。这将回答您的用例。但这将是一种黑客攻击。

IMO,最好的方法是将源代码分成两部分:.NET 部分和 Java 部分。无论如何,这有可能是 2 个不同的技术组件,即使它们与相同的 "business" 应用程序相关,它们也可能具有不同的生命周期。