我们有一个Visual Studio解决方案,其中包含10多个项目,包括ASP.NET Web项目。创建了一个Jenkins Jobs并配置了SonarQube以显示代码覆盖率指标,并且该作业成功运行。
当尝试使用以下参数在计算代码覆盖率指标(不包括ASP.NET Web项目)时缩小关注范围时,出现错误-
sonar.exclusions =“ \ ASP.NET项目名称* ”
错误 -无法识别的命令行参数:sonar.exclusions = \ *
已经推荐了Narrowing the Focus和Excluding projects from the MSBuild Runner without changing csproj files
任何人都可以用实际的语法提出建议-如何从Jenkins的“ SonarQube Scanner for MSBuild- Begin Analysis”插件中排除项目
谢谢!!任何潜在客户都很感激
答案 0 :(得分:2)
尝试使用/d:sonar.exclusions=<value>
。 Jenkins中的文本框需要用于MSBuild的Scanner的命令行参数,格式为/d:<sonar.property>=<value>
。
sonar.exclusions
属性不是很直观,因为过滤器是针对每个项目分别应用的,并且相对于项目根目录而不是解决方案根目录(并且您无法使用..
返回到解决方案)...
从分析中排除单个项目的更好选择是将以下内容放入.csproj
文件本身中:
<PropertyGroup>
<!-- Exclude the project from analysis -->
<SonarQubeExclude>true</SonarQubeExclude>
</PropertyGroup>