【发布时间】:2016-01-27 05:22:30
【问题描述】:
我正在尝试对 Jenkins 构建中的 .NET 项目进行 FxCop 分析(Invoke Standalone SonarQube Analysis)。
配置如下:
- SonarQube 5.1.2
- C# 4.2
- 声纳转轮 2.4
- Jenkins:SonarQube 插件 2.2.1
主要问题是当我在 SonarQube 中启用 FxCop 规则时,我收到错误:
java.lang.IllegalArgumentException:属性 “sonar.cs.fxcop.assembly”必须设置并且项目必须已经 为执行 FxCop 规则而构建。该属性可以自动设置 通过 Visual Studio Projects 插件的分析引导程序,请参阅: http://docs.codehaus.org/x/TAA1Dg.If你想跳过分析 未建项目,设置属性 “sonar.visualstudio.skipIfNotBuilt”。
但是,如果我在 sonar-project.properties 中明确设置 sonar.cs.fxcop.assembly指向一个程序集 (.dll) 我得到了该程序集的分析,但是该项目有多个程序集,我希望对其进行 FxCop 分析。 即使可以将程序集列表设置为参数(是吗?)这不是一个优雅/通用的解决方案,模式也不是一个可接受的值。
我知道 MSBuild SonarQube Runner 可以解决这个问题(无需设置 sonar.cs.fxcop.assembly),但它看起来不是 Jenkins 插件的好选择(在 SonarQube 下) Runner 安装),因为只允许安装 sonar-runner。
有没有什么方法可以让 FxCop 在不设置 sonar.cs.fxcop.assembly 属性的情况下使用 Jenkins 插件和 sonar-runner 工作?
【问题讨论】:
-
你对问题的描述是中肯的,但是你可以通过展示你正在使用的代码来改进它。
标签: sonarqube jenkins-plugins sonar-runner