使用SonarQube Scanner for MSBuild控制模块名称

Ste*_*gli 8 sonarqube sonarqube-msbuild-runner sonarqube-scan

我试图通过将以下xml片段添加到我的csproj文件来更改C#项目的模块名称:

<ItemGroup> 
    <SonarQubeSetting Include="sonar.projectName">
        <Value>Core.XY</Value>
    </SonarQubeSetting>
</ItemGroup>
Run Code Online (Sandbox Code Playgroud)

这按照我的预期方式工作(相应地设置SonarQube中的模块名称).

问题:这是支持还是只是意外工作?如果我不得不担心它会随着下一次升级而改变,我真的不想使用这种行为.

生成的sonar-project.properties文件包含以下条目:

B6CCB06F-640A-428E-8A4E-4BBBAD881400.sonar.projectName=XY
...
B6CCB06F-640A-428E-8A4E-4BBBAD881400.sonar.projectName=Core.XY
Run Code Online (Sandbox Code Playgroud)

这可能意味着我的配置或多或少地偶然起作用.


更新: 以下解释了为什么我要更改某些项目的模块名称:我有几个项目的解决方案,例如

Core.sln
- Lib.csproj
- Tools.csproj
Service.sln
- Lib.csproj
- ...
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我最终在SonarQube中有两个"Lib"模块,除非我有一种覆盖模块名称的方法.我当然可以重命名项目,但我宁愿能够简单地告诉SonarQube使用哪个模块名称.

如果Sonar Scanner使用程序集名称而不是项目名称,我也会非常高兴.

小智 0

我相信,您可以使用此设置。“SonarQubeSetting”和“sonar.projectName”将正确设置项目名称。

请参阅链接链接以了解更多信息。