0
votes

I asked to use SonarQube to analyse the .NET Project. I installed sonarqube-5.6.7 and everything working fine as expected but the issue arise when I build the .net solution using MSBuild.SonarQube.Runner.exe. Solution is getting build successfully but getting error while sending report to Sonar server.

Please note, I am using Visual studio 2012 project with 4.5.2 framework, I don't use TFS and even Jenkins.

  • SonarQube.Scanner.MSBuild.exe begin /k:"key" /n:"Project name" /v:"1.0" - This step seems to work fine.

  • MSBuild.exe /t:Rebuild - This step seems to work fine.

  • SonarQube.Scanner.MSBuild.exe end - This step fails.

Output of the failing step:

D:\...>SonarQube.Scanner.MSBuild.exe end
SonarQube Scanner for MSBuild 3.1
Default properties file was found at C:\Users\xxxx\Downloads\sonarqube-5.6.7
\bin\SonarQube.Analysis.xml

Loading analysis properties from C:\Users\xxx\Downloads\sonarqube-5.6.7\bin
\SonarQube.Analysis.xml

Post-processing started.

The SonarQube MSBuild integration failed: SonarQube was unable to collect the re
quired information about your projects.

Possible causes:

  1. The project has not been built - the project must be built in between the b
egin and end steps

  2. An unsupported version of MSBuild has been used to build the project. Curre
ntly MSBuild 14.0 upwards are supported

  3. The begin, build or end steps have not all been launched from the same fold
er

Generation of the sonar-properties file failed.     
Unable to complete SonarQube analysis.    
15:29:11.087  Creating a summary markdown file...    
15:29:11.1  Post-processing failed. Exit code: 1

Can anyone let me know what I am missing?

As suggested below, I downloaded "sonar-scanner-msbuild-2.3.2.573.zip" and tried to rebuild the Visual Studio 2012 project which target framework version is 4.5.2 and got below errors. I tried to build with direct path of MSBuild 12 and also without giving the MSBuild full path but still getting the errors.

D:\test\test>C:\Users\xxxx\Downloads\sonarqube-5.6.7\bin\SonarQube.Scanner.M
SBuild.exe begin /k:"org.sonarqube:sonarqube-scanner-msbuild" /n:"Test Project"
/v:"1.0"

SonarQube Scanner for MSBuild 2.3.2
Default properties file was found at C:\Users\xxxx\Downloads\sonarqube-5.6.7
\bin\SonarQube.Analysis.xml

Loading analysis properties from C:\Users\xxxx\Downloads\sonarqube-5.6.7\bin
\SonarQube.Analysis.xml

Pre-processing started.

Preparing working directories...

11:23:11.818  Updating build integration targets...

11:23:11.863  Fetching analysis configuration settings...

11:23:13.712  Generating rulesets...

11:23:13.776  Provisioning analyzer assemblies for cs...

11:23:13.778  Installing required Roslyn analyzers...

11:23:13.992  Pre-processing succeeded.

D:\test\test>MSBuild.exe /t:Rebuild

Microsoft (R) Build Engine version 4.0.30319.34209
[Microsoft .NET Framework, version 4.0.30319.34209]
Copyright (C) Microsoft Corporation. All rights reserved.

Building the projects in this solution one at a time. To enable parallel build,
please add the "/m" switch.

Build started 09/10/2017 11:23:29.
Project "D:\test\test\test.sln" on node 1 (Rebuild target(s)).

ValidateSolutionConfiguration:
  Building solution configuration "Debug|Any CPU".

Project "D:\test\test\test.sln" (1) is building "D:\test\test\test\test.csproj"
 (2) on node 1 (Rebuild target(s)).

CoreClean:
  Deleting file "D:\test\test\test\bin\test.dll".
  Deleting file "D:\test\test\test\bin\test.pdb".
  Deleting file "D:\test\test\test\obj\Debug\test.csprojResolveAssemblyReferenc
  e.cache".
  Deleting file "D:\test\test\test\obj\Debug\test.dll".
  Deleting file "D:\test\test\test\obj\Debug\test.pdb".
GenerateTargetFrameworkMonikerAttribute:
Skipping target "GenerateTargetFrameworkMonikerAttribute" because all output fi
les are up-to-date with respect to the input files.
CoreCompile:
  C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Csc.exe /noconfig /nowarn:1701,
  1702 /nostdlib+ /errorreport:prompt /warn:4 /define:DEBUG;TRACE /highentropyv
  a+ /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framewor
  k\.NETFramework\v4.5.2\Microsoft.CSharp.dll" /reference:"C:\Program Files (x8
  6)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.2\mscorlib.dll
  " /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework
  \.NETFramework\v4.5.2\System.ComponentModel.DataAnnotations.dll" /reference:"
  C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework
  \v4.5.2\System.Configuration.dll" /reference:"C:\Program Files (x86)\Referenc
  e Assemblies\Microsoft\Framework\.NETFramework\v4.5.2\System.Core.dll" /refer
  ence:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFra
  mework\v4.5.2\System.Data.DataSetExtensions.dll" /reference:"C:\Program Files
   (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.2\System.D
  ata.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Fr
  amework\.NETFramework\v4.5.2\System.dll" /reference:"C:\Program Files (x86)\R
  eference Assemblies\Microsoft\Framework\.NETFramework\v4.5.2\System.Drawing.d
  ll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framewo
  rk\.NETFramework\v4.5.2\System.EnterpriseServices.dll" /reference:"C:\Program
   Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.2\Sy
  stem.Web.ApplicationServices.dll" /reference:"C:\Program Files (x86)\Referenc
  e Assemblies\Microsoft\Framework\.NETFramework\v4.5.2\System.Web.dll" /refere
  nce:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFram
  ework\v4.5.2\System.Web.DynamicData.dll" /reference:"C:\Program Files (x86)\R
  eference Assemblies\Microsoft\Framework\.NETFramework\v4.5.2\System.Web.Entit
  y.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Fram
  ework\.NETFramework\v4.5.2\System.Web.Extensions.dll" /reference:"C:\Program
  Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.2\Sys
  tem.Web.Services.dll" /reference:"C:\Program Files (x86)\Reference Assemblies
  \Microsoft\Framework\.NETFramework\v4.5.2\System.Xml.dll" /reference:"C:\Prog
  ram Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5.2
  \System.Xml.Linq.dll" /debug+ /debug:full /optimize- /out:obj\Debug\test.dll
  /subsystemversion:6.00 /target:library /utf8output Properties\AssemblyInfo.cs
   "C:\Users\xxxx\AppData\Local\Temp\.NETFramework,Version=v4.5.2.AssemblyA
  ttributes.cs"
CopyFilesToOutputDirectory:
  Copying file from "obj\Debug\test.dll" to "bin\test.dll".
  test -> D:\test\test\test\bin\test.dll
  Copying file from "obj\Debug\test.pdb" to "bin\test.pdb".
Done Building Project "D:\test\test\test\test.csproj" (Rebuild target(s)).

Done Building Project "D:\test\test\test.sln" (Rebuild target(s)).


Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:00:00.71

D:\test\test>C:\Users\xxxx\Downloads\sonarqube-5.6.7\bin\SonarQube.Scanner.M
SBuild.exe end

SonarQube Scanner for MSBuild 2.3.2

Default properties file was found at C:\Users\xxxx\Downloads\sonarqube-5.6.7
\bin\SonarQube.Analysis.xml

Loading analysis properties from C:\Users\xxxx\Downloads\sonarqube-5.6.7\bin
\SonarQube.Analysis.xml

Post-processing started.
The SonarQube MSBuild integration failed: SonarQube was unable to collect the re
quired information about your projects.

Possible causes:
  1. The project has not been built - the project must be built in between the b
egin and end steps

  2. An unsupported version of MSBuild has been used to build the project. Curre
ntly MSBuild 12.0 upwards are supported

  3. The begin, build or end steps have not all been launched from the same fold
er

Generation of the sonar-properties file failed. Unable to complete SonarQube ana
lysis.

11:23:59.124  Creating a summary markdown file...
11:23:59.14  Post-processing failed. Exit code: 1
1

1 Answers

-1
votes

Starting from version 3.0, SonarQube Scanner for MSBuild requires MSBuild 14 or later to work.

It seems you have SonarQube Scanner for MSBuild 3.1, but your project is build with Visual studio 2012, which uses MSBuild 12.

You need to either:


Using an older version (2.3.2) you had a problem with the build step:

"C:\Program Files (x86)\MSBuild\12.0\Bin\"MSBuild.exe /t:Rebuild

This was required to work in order to be able to analyze. According to your comment, the problem was resolved like so:

I have resolved this issue by updating C:\Program Files (x86)\MSBuild\12.0 folder with targets. I copy the target folder from MSBuild 4.0 to MSBuild 12.0 and it's working.