-->

Cannot find the .pdb file inferred from the proper

2019-08-08 10:12发布

问题:

Error during Sonar runner execution. Cannot find the .pdb file e:\builds\XYZ\zz_Sonar\XYZ\Main\Source\XYZ\Binaries\XYZ.WinForms.UI.pdb inferred from the property sonar.cs.fxcop.assembly. The XYZ.WinForms.UI .NET project is a Windows app and generates an exe not a dll or resulting pdb file. Why is Sonar looking for it?

This is a VS 2010 solution. We are using Sonar Qube 4.4. Plugins C# version 3.2.1, Analysis Bootstrapper for Visual Studio Projects version 1.2. Java version 1.7.0_45-b18.

Here is my project properties file:

# required metadata
sonar.projectKey=XYZ
sonar.projectName=XYZ
sonar.projectVersion=StampValue
sonar.sources=.
sonar.language=cs
sonar.forceAnalysis=true
sonar.verbose=True
sonar.sourceEncoding=UTF-8
sonar.cpd.cross_project=false

#Core C# Settings 
sonar.dotnet.visualstudio.solution.file=XYZ.sln
sonar.visualstudio.outputPaths=Binaries
sonar.dotnet.excludeGeneratedCode=true
#Visual Studio plugin
sonar.cs.vstest.reportsPaths=TestResults/XYZ.trx
sonar.cs.vscoveragexml.reportsPaths=TestResults/xyz_coverage/coverage.xml
sonar.visualstudio.enable=true
# Unit Test Results

sonar.scm.enabled=false
sonar.scm-stats.enabled=false

#Gendarme
sonar.gendarme.mode=
sonar.gendarme.reports.path=pathto/gendarme-report.xml

# Gallio / Unit Tests
sonar.gallio.mode=False

#NDeps
sonar.ndeps.mode=

# FxCop
sonar.visualstudio.skipIfNotBuilt=true
sonar.cs.fxcop.fxCopCmdPath=C:/Program Files (x86)/Microsoft Visual Studio 12.0/Team Tools/Static Analysis Tools/FxCop/FxCopCmd.exe
sonar.cs.fxcop.assembly=E:\builds\XYZ\zz_Sonar\XYZ\Main\Source\XYZ\Binaries

sonar.stylecop.styleCopDllPath=C:/Program Files (x86)/StyleCop 4.7/StyleCop.dll
sonar.stylecop.installDirectory=C:/Program Files (x86)/StyleCop 4.7

回答1:

It was a simple difference of building in Debug mode versus Release. Release mode generated the pdb files but just not for the one project. Building in Debug generated the 'missing' pdb file. I'm sure there is a way to get it to work in release mode.