SonarQube 未找到 Microsoft.CodeAnalysis 1.3.1.0 但已安装

Posted

技术标签:

【中文标题】SonarQube 未找到 Microsoft.CodeAnalysis 1.3.1.0 但已安装【英文标题】:SonarQube doesnt find Microsoft.CodeAnalysis 1.3.1.0 but it is installed 【发布时间】:2020-12-11 04:16:16 【问题描述】:

我尝试在我的 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

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

以上是关于SonarQube 未找到 Microsoft.CodeAnalysis 1.3.1.0 但已安装的主要内容,如果未能解决你的问题,请参考以下文章

SonarQube 未找到 Microsoft.CodeAnalysis 1.3.1.0 但已安装

SonarQube 和 Karma 代码覆盖率 - 未解析的文件路径

Jenkins 2 - Sonar 6.3 - JaCoCo 报告未找到

长期分支的 Sonarqube 分支结果未按预期显示

代码覆盖率结果未使用 sonarqube 中的分支进行更新

SonarQube 未检测到 Angular-TypeScript 规则违规