0

我试图在我的 C# 项目上运行 SonarQube 扫描。我有 3 个项目和 1 个解决方案文件。

我跑:

SonarScanner.MSBuild.exe begin /o:"xxxxxxxxx" /k:"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"     
/d:sonar.host.url="https://sonarcloud.io" /d:sonar.login="xxxxxxxxxxxxxxxxxxxxxxxxxxx"
MSBuild.exe  Cake.Framework.sln /t:Rebuild
SonarScanner.MSBuild.exe /d:sonar.login="xxxxxxxxxxxxxxxxxxxxxxx" end

然后我在我的cmd上看到:

 SonarScanner for MSBuild 4.10
 Using the .NET Framework version of the Scanner for MSBuild
 Pre-processing started.
 Preparing working directories...
 Updating build integration targets...
 Fetching analysis configuration settings...
 Provisioning analyzer assemblies for cs...
 Installing required Roslyn analyzers...
 Provisioning analyzer assemblies for vbnet...
 Installing required Roslyn analyzers...
 Pre-processing succeeded.

 C:\Users\santi\Desktop\20200422_Cake.Framework-master>MSBuild.exe  Cake.Framework.sln /t:Rebuild
 Microsoft (R) Build Engine, versión 14.0.23107.0

一切似乎都很好,但突然间我收到了 1000 多个这样的警告:

 CSC : warning CS8032: Couldnt create an analyzer instance     
 SonarAnalyzer.Rules.CSharp.PartCreationPolicyShouldBeUsedWithExportAttribute from 
 C:\Users\santi\AppData\Local\Temp\.sonarqube\resources\0\SonarAnalyzer.CSharp.dll : Could not load 
 file or assembly 'Microsoft.CodeAnalysis, version= 1.3.1.0, Culture=neutral,  
 PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file 
 specified. [C:\Users\santi\Desktop\20200422_Cake.Framework-master\Cake.Framework\Cake.Framework.csproj]

我已经使用 NuGet 管理器在我的所有 3 个项目上安装了 Microsoft.CodeAnalysis v 1.3.1。

我错过了什么?

我正在使用 .NET Framework 4.8、MSBuild 14.0、Visual Studio 2019

4

1 回答 1

2

您无需在项目中安装代码分析 NuGet 包。

重要的是您用于构建解决方案的 MSBuild 版本随附的代码分析程序集的版本。检查您使用的是哪个版本的 MSBuild ( msbuild -ver)。它需要14.0.25420.1或稍后。

于 2020-08-27T10:33:21.643 回答