为什么Visual Studio中的SonarLint中不存在某些SonarQube规则

为什么Visual Studio中的SonarLint中不存在某些SonarQube规则,sonarqube,sonarlint,sonarlint-vs,Sonarqube,Sonarlint,Sonarlint Vs,我不明白索纳林特和索纳库贝之间的这种区别 我的声纳配置丢失了吗 参见下面的打印 谢谢大家 对于C#代码,VS的Sonarint(“SLVS”)和MSBuild的扫描仪(“S4MSB”)都使用Sonar C#Roslyn分析仪 SLVS使用嵌入在VSIX中的SonarC版本;S4MSB使用SonarQube SonarC#插件中嵌入的版本。如果使用不同版本的SonarC#Analyzer,您可能会看到报告的问题略有不同,因为分析仪正在积极开发中(例如,添加新规则,修复误报和错误) 一个更常见的

我不明白索纳林特和索纳库贝之间的这种区别

我的声纳配置丢失了吗

参见下面的打印


谢谢大家

对于C#代码,VS的Sonarint(“SLVS”)和MSBuild的扫描仪(“S4MSB”)都使用Sonar C#Roslyn分析仪

SLVS使用嵌入在VSIX中的SonarC版本;S4MSB使用SonarQube SonarC#插件中嵌入的版本。如果使用不同版本的SonarC#Analyzer,您可能会看到报告的问题略有不同,因为分析仪正在积极开发中(例如,添加新规则,修复误报和错误)

一个更常见的差异来源是要运行的规则集的配置。 SLV和SonarQube都使用相同的默认规则集,但这是可配置的。在SonarQube中,使用质量配置文件完成规则配置。在VS中,它是使用标准VS规则集机制完成的

默认情况下,屏幕截图中的规则S1244处于禁用状态,因此我猜您的SonarQube项目使用的是启用该规则的自定义质量配置文件

如果您在“独立模式”(即独立于SonarQube/SonarCloud)下使用SLV,则需要使用规则集配置要运行的规则

如果您在SonarQube/SonarCloud上有一个项目,并且希望在SLV中本地使用相同的规则集,则可以使用“连接模式”要从VS中的团队资源管理器将VS解决方案链接到SonarQube/SonarCloud项目,SLVS将从质量配置文件生成规则集,并将解决方案中的项目配置为使用生成的规则集