使用 TeamCity 对我的旧且粗糙的解决方案运行 Fxcop 会产生太多错误

Posted

技术标签:

【中文标题】使用 TeamCity 对我的旧且粗糙的解决方案运行 Fxcop 会产生太多错误【英文标题】:Using TeamCity to run Fxcop against my old and gnarly solution generates too many errors 【发布时间】:2011-10-26 09:06:11 【问题描述】:

如何让 TeamCity 运行的 Fxcop 限制自己查看更少的规则?

我不想使用 .fxcop 项目,因为这意味着我需要管理在分析中使用哪些 .dll,而不是在 teamcity 构建步骤中使用通配符。

【问题讨论】:

Loofer,答案是否定的。我们的追踪器中有related issue。随意观看/投票/评论。 【参考方案1】:

您有三个基本选项是您真的想完全禁用某些规则:

    (仅限 FxCop 10.0)您可以使用规则集,您应该能够使用 TeamCity 中 fxcopcmd.exe 的其他命令行选项指定该规则集。 您可以使用 /ruleid 命令行开关来指定要排除的规则。 您应该能够使用不包含目标的 .fxcop 项目文件以及命令行的目标程序集开关。 (鉴于 lodkin 的回复,如果您想使用 TeamCity 的通配符程序集列表,听起来您需要通过其他命令行选项指定 .fxcop 文件。)

如果您不想冒险引入新的违反这些规则的行为(这些规则显然在过去经常被违反),您可能需要考虑禁止旧的违反行为,而不是完全禁用这些规则。如果是这样,一种方法是将抑制添加到 .fxcop 项目文件(如上面的 #3 中使用),并附上说明它们是“积压”或“遗留”违规的注释。这可以在 FxCop UI 的一个步骤中完成,并且允许您将这些抑制与源代码中通过 SuppressMessage 属性指示的“真实”抑制分开。

【讨论】:

以上是关于使用 TeamCity 对我的旧且粗糙的解决方案运行 Fxcop 会产生太多错误的主要内容,如果未能解决你的问题,请参考以下文章

TeamCity FxCop 运行器:指定程序集

TeamCity - MSBuild 代码分析

TeamCity 和 cppcheck 输出模板

使用 TeamCity 构建后如何部署?

如何调试从 TeamCity 部署的我的 nuget 包?

无法通过TeamCity运行某些功能文件标记