【问题标题】:Is it possible to maintain multiple properties files for a single MSBuild scan?是否可以为单个 MSBuild 扫描维护多个属性文件?
【发布时间】:2018-01-26 10:07:05
【问题描述】:

我想维护一个通用属性文件,例如,包含 SonarQube 登录信息。 然后,每个特定项目都有自己的属性文件。 有没有办法做到这一点?似乎只能识别一个属性文件。

我正在运行 SonarQube v5.6.6

提前致谢。

【问题讨论】:

  • 为什么要这样做?您可以创建一个小程序,在扫描之前为您创建属性文件。
  • 我希望灵活地维护通用属性文件的主要原因是保持登录分开。其他设置应该适用于所有人,并将在我们的版本控制系统 (Git) 中维护。在构建时生成属性文件是可管理的,但是,如果已经存在支持多个属性文件的机制,那就更简洁了。

标签: sonarqube sonarqube-scan sonarqube5.6


【解决方案1】:

Scanner for MSBuild documentation

  • 您可以在Scanner安装目录下添加登录信息(因此对所有项目都是通用的)@scanner_install_dir\bin\SonarQube.Analysis.xml
  • 然后可以在执行扫描仪时通过命令行传递项目特定属性
  • 对于非常特殊的情况(很少需要),您也可以set Additional Analysis Parameters

【讨论】:

  • 我的SonarQube.Scanner.MSBuild.exe安装在目录C:\SonarQube\Scanners\sonar-scanner-msbuild-3.0.0.629SonarQube.Analysis.xml
  • 我的 SonarQube.Scanner.MSBuild.exe 安装在目录 C:\SonarQube\Scanners\sonar-scanner-msbuild-3.0.0.629 我修改了该目录中的 SonarQube.Analysis.xml 以包含登录信息。在我将 /s:C:\Temp\Project.Properties.xml 添加到命令行之前,效果很好。 Project.Properties.xml 仅包含: true 但这足以导致扫描仪忽略 SonarQube.Analysis.xml 文件并登录失败。
  • @SteveK 使用 /d 选项。查看Additional Analysis Parameters中的最后一行
  • @JeroenHeier,我希望避免使用 /d 选项来传递登录信息,因为命令行在构建日志中可见。由于似乎我无法使用多个属性文件,因此我可能需要使用 /D。顺便提一句。我们有太多属性,无法通过命令行将大部分属性传递给 SonarQube.Scanner.MSBuild,因此大部分属性都需要放在属性文件中。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-19
  • 1970-01-01
  • 2014-02-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多