4

我们正在使用 MSBuild 在构建服务器 (Jenkins) 上构建一个非常大的 Visual C++ 2010 解决方案(大约 150 个项目,完整构建大约需要一个小时)。不幸的是,当一个项目失败时,很难找出失败的原因和原因,因为控制台日志太长而且很难找到错误。

是否有一个很好的 msbuild 日志解析器或 msbuild 记录器,可以很好地列出所有失败的项目和错误消息?到目前为止,我们发现的最好的是警告插件,但在许多情况下这几乎没有用。

4

2 回答 2

9

我发现Log Parser Plugin非常有用,尽管您需要提供自己的解析器文件(在 /jobs/vs_parsing_rules 中)。我使用以下,它适用于msbuild

error /[Ee]rror *:/
error /Error on line/
error /error [CM]/
error /fatal error/
error /unresolved external/
error /[aA]ccess is denied/
error /aborted/
warning /[Ww]arning *:/
warning /[Ww]arning C/
warning /WARNING/
warning /Couldn't/
warning /Can't/
warning /Cannot/
warning /ld.*unsupported/
error /[uU]ndefined symbols/
warning /[rR]eferenced from/
warning /[nN]ot found/
warning /exit status/
warning /no symbols/
error /ERROR[^A-Za-z]/
info /INFO/
start /BUILD/
于 2012-08-23T08:15:07.183 回答
1

另一个适用于 msbuild 的有用解析规则:

# Divide into sections based on project compile start
start /^------/

# Compiler Error
error /(?i)error [A-Z]+[0-9]+:/
error /MSBUILD : (?i)error :/
error /\(\d+(,\d+)?\): (?i)error [A-Za-z]*:/

# Compiler Warning
warning /(?i)warning [A-Z]+[0-9]+:/
于 2014-08-06T07:26:49.727 回答