SonarQube 仅在 csproj 上进行来自 SLN 的分析

SonarQube takes only on csproj to do the anlyse from SLN

我想 运行 SonarQube 分析我的 sln 文件意味着,所有 csproj 都包含在该文件中。 显然我在配置中遗漏了一点,因为我的扫描仪只需要一个 csproj(总是一样)

这就是我使用命令行的方式

E:\SonarQube\bin\SonarQube.Scanner.MSBuild.exe  begin /k:"MySuperProjectKey" /n:"MySuperName" /v:"1.0"

然后我使用 msbuild 工具进行构建(不涉及 visual studio)

'"C:\Program Files (x86)\Microsoft Visual Studio17\BuildTools\MSBuild.0\Bin\MSBuild.exe" /t:Rebuild  /p:Configuration=dev MySuperVSProjectWithPlentyOfCSPROJ.sln"'

然后正常结束

"E:\SonarQube\bin\SonarQube.Scanner.MSBuild.exe end"

一天结束时,我的 SonarQube 网站上只分析了一个 C# sharelibrary 项目,而不是 10 个或更多。

我必须使用 SonarScanner.MSBuild.exe 而不是 SonarQube.Scanner.MSBuild.exe 我所有的 csproj 现在都在我的仪表板上。

您可以从 sonarqube 扫描中排除不必要的 csproj 文件。以下内容可能对您有所帮助

 <!-- in .csproj -->
 <PropertyGroup>
 <!-- Exclude the project from analysis -->
 <SonarQubeExclude>true</SonarQubeExclude>
 </PropertyGroup>