Ben*_*ttr 5 msbuild teamcity continuous-integration compilation visual-studio
在我们的连续集成服务器(Teamcity 5.1.3)上,我们有一个自动构建应用程序的msbuild脚本.
当我们启用"警告为错误"时:在Visual Studio中,它构建正常(它忽略"*.designer.cs"文件中的方法.但在构建服务器上,我们总是收到以下错误:
[(Rebuild target(s)):] somefile.Designer.cs(XX, XX): error CS1591: Warning as Error: Missing XML comment for publicly visible type or member...
Run Code Online (Sandbox Code Playgroud)
正在使用的MSBuild脚本如下所示:
<MSBuild Projects="proj\$(ProjectName).sln"
Targets="Clean;Rebuild"
Properties="Configuration=Release"
StopOnFirstFailure="True">
</MSBuild>
Run Code Online (Sandbox Code Playgroud)
我可以理解为什么会这样做,但必须有一种方法告诉msbuild忽略生成的文件中缺少的注释?
EDITED
进一步挖掘:在Visual Studio解决方案中,我们选中了"警告为错误",但我们还添加了"抑制警告"文本框中列出的错误1591.MSBuild似乎没有拿起那个"压制警告"文本框并且无法构建.我能做什么?
再次编辑 问题是MSBuild正在针对任何CPU(并且在"任何CPU"配置中我们没有抑制错误1591).一旦我们更改了任何CPU以排除错误1591,它就开始在构建服务器上正确构建.谢谢那些有帮助的人.
不,MSBuild 对 XML 注释并不挑剔。无论您使用什么代码分析工具。猜测类似 StyleCop 的东西。它确实抱怨了这个确切的问题,它不是很聪明,与 Windows 窗体项目模板差不多。
只有当您在开发人员上实施与应用于构建服务器相同的构建规则时,您才能解决这个问题。因为需要其中之一来编辑 Mumble.Designer.cs 文件中的请勿编辑代码并应用 [GenerateCode] 属性。现在不在那里了。
这是一个政治问题,我无法真正帮助你解决这个问题。在不同时间和不同建筑物中从事此工作的微软团队也同样如此。但如果你要求开发人员解决问题,你可以指望他们大声叫喊。
使其保持一致。
| 归档时间: |
|
| 查看次数: |
6495 次 |
| 最近记录: |