我尝试通过将以下 xml 片段添加到我的 csproj 文件中来更改 C# 项目的模块名称:
<ItemGroup>
<SonarQubeSetting Include="sonar.projectName">
<Value>Core.XY</Value>
</SonarQubeSetting>
</ItemGroup>
这按照我预期的方式工作(SonarQube 中的模块名称已相应设置)。
问题:这是受支持的还是只是偶然起作用的?如果我不得不担心它会随着下一次升级而改变,我真的不想使用这种行为。
生成的 sonar-project.properties 文件包含以下条目:
B6CCB06F-640A-428E-8A4E-4BBBAD881400.sonar.projectName=XY
...
B6CCB06F-640A-428E-8A4E-4BBBAD881400.sonar.projectName=Core.XY
这可能意味着我的配置或多或少是偶然的。
更新: 下面解释一下为什么我要更改一些项目的模块名称: 我有几个项目解决方案,例如
Core.sln
- Lib.csproj
- Tools.csproj
Service.sln
- Lib.csproj
- ...
在这种情况下,除非我有办法覆盖模块名称,否则我最终会在 SonarQube 中得到两个“Lib”模块。我当然可以重命名项目,但我宁愿能够简单地告诉 SonarQube 使用哪个模块名称。
如果 Sonar Scanner 使用程序集名称而不是项目名称,我也会非常高兴。