SonarQube C# 与额外的正则表达式匹配

SonarQube C# with additional regex match

我安装了 MsBuild C# 插件和 运行 SonarQube,但我还想匹配子字符串词,例如“TODO”或“FIXME”。

我找不到在 C# 插件中配置它的方法,但我找到了一个名为 text-plugin 的插件来执行此操作,但是我如何将 SonarQube 配置为 运行 源上的两个插件代码?

我已经在 text-plugin 中配置了一个单行正则表达式,并使用 **/* 将其映射到所有文件类型,但它不会 运行,如果我将 text-plugin 与 .cs 相关联SonarQube 运行用户无法确定语言。

我要采取的方法是为 C# 开发自定义 Roslyn 分析器,它将检测不良评论模式。有大量在线资源可用于开始编写 Roslyn 分析器。

您可以查看 TODO 和 FIXME 分析器是如何implemented in SonarAnalyzer for C# 以了解如何编写处理评论的分析器。

获得自定义 Roslyn 分析器后,使用 the SonarQube Roslyn SDK to make it available in SonarQube

这还将使您能够轻松添加更多自定义 C# 规则,而不受 text-plugin 功能的限制。