运行的声纳Qube扫描仪项目被标记为无效



我正在从詹金斯(Jenkins)为MSBUILD运行Sonarqube扫描仪。

项目在VS2013中,但我正在使用MSBuild 14。

构建成功,但只扫描了几个文件(10)

在Sonarqube扫描仪上日志上,如果战争能够找到标记为"无效项目"的大量项目列表,我不确定为什么会发生这种情况。

另一个信息:当我添加声纳扫描仪1 小时

时,构建本身需要14分钟
Product projects
---------------------------------------
e:jenkinsworkspaceXXXX.YY.csproj
Test projects
---------------------------------------

Invalid projects
---------------------------------------
e:jenkinsworkspaceWWWW.RR.csproj
e:jenkinsworkspaceTTTT.JJ.csproj
{none}

Skipped projects
---------------------------------------
{none}

Excluded projects
---------------------------------------
{none}

sonarqube扫描仪,如果不包含项目指南属性 <ProjectGuid>{XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX}</ProjectGuid>(或者等于guid.empty),则认为项目无效,并且不包含在解决方案中。要解决此问题,您应该确保每个项目中都有唯一的ProjectGuid

分析增加了一些开销,通常会大大增加汇编时间,尤其是在启用许多规则的情况下。但是,默认质量轮廓不应将汇编增加超过2-3倍。

您正在使用哪种版本的MSBuild,Sonarc#和Sonarqube?由于您的项目是针对VS2013的,因此我怀疑您可能使用的是MSBIULD 12后备,既较慢又不精确(因为在分析过程中,每个文件都包含在临时项目中并分别编译)。确保您使用MSBUILD 14模式的好方法是将扫描仪用于MSBUILD 3.0 和SONARC#6.0 ,因为它们不再支持MSBUILD 12模式...

我能够通过使用PowerShell

直接调用可移动来解决此问题

第一步初始化

cd "<Project root folder>"
& "E:sonar-scanner-msbuild-3.0.2.656SonarQube.Scanner.MSBuild.exe" begin /k:"<project key>" /n:"<project name>" /v:"<version>" /d:sonar.host.url=<URL> /d:sonar.login=<Token>

第二步

MS Build

第三步

   & "E:sonar-scanner-msbuild-3.0.2.656SonarQube.Scanner.MSBuild.exe" end

最新更新