将project.properties文件传递给sonar-scanner

时间:2018-04-23 11:45:43

标签: tfs msbuild sonarqube sonarqube-scan

我在一个解决方案文件中有多个项目。并且需要在一个管道中构建3个项目,在另一个CI管道中构建两个项目。因此,为了使用sonarqube分析代码,我发现使用两个project.properties文件并通过在解决方案文件的目录中运行sonar-scanner命令以及属性文件来解决问题。

如果我在一个sonar-project.properties文件中包含3个项目,这是有效的。因为我没有和声纳扫描器一起传递任何参数,它正在选择默认属性文件,即sonar-project.properties。如果我重命名它并为另一个管道创建另一个属性文件,我需要将参数传递为

sonar-scanner -Dproject.settings = .. / myproject.properties

但它无法识别属性文件。请帮忙。

我点了这个链接:https://docs.sonarqube.org/display/SCAN/Advanced+SonarQube+Scanner+Usages Sonarqube版本= 6.8 2017年TFS的管道。 MSBuild版本15。

提前致谢。

2 个答案:

答案 0 :(得分:0)

当您尝试通过参数int count = constrainLayout.getChildCount(); flowLayout.removeViews(0, count); 传递声纳属性文件时,分析文件夹中是否还有一个名为sonar-project.properties的文件?如果是这样,你必须重命名它才能使用project.settings参数。

我注意到如果sonar-project.properties文件已经存在,那么传递project.settings参数的文件不会被记入帐户。

除了使用.properties文件之外,仅分析特定项目的另一个选项是在csprojs中使用MSBuild条件排除。 有关完整说明,请访问:https://github.com/SonarSource/sonar-.net-documentation/blob/master/doc/appendix-3.md

答案 1 :(得分:0)

您可以直接在解决方案/项目文件夹下使用传统属性文件,而不是在版本4.0 SonarQube 任务的其他属性设置中使用它

enter image description here

  

这项新准备任务的最佳改进之一就是   单行“附加属性”由多行替换   文本框,允许您设置所有属性   通常在“sonar-project.properties”文件中执行。

更多细节请看这个博客:Perform SonarCloud and SonarQube analysis with the new version 4 build tasks

相关问题