我曾尝试在我的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:UserssantiDesktop20200422_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:UserssantiAppDataLocalTemp.sonarquberesources 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:UserssantiDesktop20200422_Cake.Framework-masterCake.FrameworkCake.Framework.csproj]
我已经使用NuGet Manager在我的所有3个项目上安装了Microsoft.CodeAnalysis v1.3.1。
我缺少什么?
我使用的是.NET Framework 4.8、MSBuild 14.0、Visual Studio 2019
您不需要在项目中安装代码分析NuGet包。
重要的是与用于构建解决方案的MSBuild版本一起提供的代码分析程序集的版本。请检查您正在使用的MSBuild版本(msbuild -ver
(。它需要14.0.25420.1
或更高版本。