在团队构建中解析Resharper代码分析xml

在团队构建中解析Resharper代码分析xml,resharper,tfsbuild,Resharper,Tfsbuild,我在我的团队构建中使用这个新的Resharper来分析代码问题。 这很好,它生成了一个包含所有代码问题的XML文件 我试图完成的是解析XML。对于每个问题,我都想写一个构建警告或构建错误 xml如下所示: <Report ToolsVersion="8.0"> <IssueTypes>...</IssueTypes> <Project Name="FooBar"> <Issue TypeId="FieldCanBeM

我在我的团队构建中使用这个新的Resharper来分析代码问题。 这很好,它生成了一个包含所有代码问题的XML文件

我试图完成的是解析XML。对于每个问题,我都想写一个构建警告或构建错误

xml如下所示:

<Report ToolsVersion="8.0">
   <IssueTypes>...</IssueTypes>
   <Project Name="FooBar">
       <Issue TypeId="FieldCanBeMadeReadOnly.Local" File="Builder.cs" Offset="266-277" Line="10" Message="Field can be made readonly" />
...
   </Project>
</Report> 

...
...

他们的xml解析器是否可用,我可以将其插入到构建过程模板中?或者,我需要创建自己的控制台应用程序来解析xml吗?

TeamCity已经捆绑了ReSharper runner()。您没有将runner作为独立应用程序运行。来自捆绑运行程序的错误被视为生成错误。

我不知道是否存在XML解析器,或者是否可以将其集成到工作流中,但一种可能性是创建自定义生成活动并将其挂接到生成过程中

然后,活动可以读取包含问题的XML文件并填写
IEnumerable
。(或者一个对象,我相信您应该能够创建一个对象并从工作流中访问属性。)在您的工作流中,您可以捕获输出枚举,在其上循环并将生成错误或警告(或两者)写入生成输出


Ewald Hofman有一篇很好的博客文章,介绍了如何将inspectcode作为MSBuild任务来实现。实际上,这很简单,并且可以让您对实际操作进行很多控制。

请关注并投票支持此问题。您是否考虑过将自定义活动发送到项目中?我认为我们将在不久的将来开始在构建过程中集成resharper,如果能够像这样进行集中和彻底的测试,那就太好了。