如何从外部源向 SonarQube 中的项目添加一行代码度量?

How can I add a lines of code measure to a project in SonarQube from an external source?

我们目前无法访问每个项目的 PL/SQL 代码,但我得到了数据库模式中代码行的报告。我想将此外部措施添加到我的 Sonar 项目中,以便我最终可以从单一来源进行报告。

我试图为它引入语言和传感器 classes,但这违背了这些 classes 的目的,因为我手头没有 PL/SQL 代码,如前所述,只是一个包含每个项目的 loc 编号的文件。

我想以我在其他插件中看到的方式添加度量,例如:

context.saveMeasure(inputFile, CoreMetrics.LINES, lines);
context.saveMeasure(inputFile, CoreMetrics.NCLOC, ncLoc);

但我没有输入文件,我只有 loc 报告和 "PL/SQL" 语言定义 class。

我认为我应该在上下文中使用以下方法之一:

saveMeasure(Measure measure);

或 saveMeasure(Metric metric, Double value);

但是我如何构造一个 Measure 或 Metric 来定义该语言代码行的顶级值?谁能指出我正确的方向?谢谢!

SonarQube是关于源码分析的。这不是一个通用的报告工具。如果您没有源代码,那么 SonarQube 可能不适合您。