使MSBuild检测并提取非ms工具的错误和警告

时间:2017-01-13 07:32:30

标签: msbuild tfsbuild

当MSBuild构建完成时,驱动程序会提取警告和错误消息并输出错误摘要。但是它只识别它本身和Microsoft编译器使用的错误格式。但我们也为其他平台构建,其中错误来自CLang,Make和Javac,每种都有不同的格式。

有没有办法告诉MSBuild识别这些错误,或者,可以将其他错误转换为Microsoft格式,以便他们进入摘要?

完整日志真的很长,更糟糕的是,TFS构建服务器并未显示所有内容,只显示了被识别为特定严重性级别的消息,因此从跨平台构建中访问错误相当多工作

1 个答案:

答案 0 :(得分:4)

在您的Msbuild文件中,您可能会使用<exec>来调用这些其他工具。您可以将以下属性添加到exec标记:

IgnoreStandardErrorWarningFormat=true 
CustomErrorRegularExpression="^ERROR" 
CustomWarningRegularExpression="^WARN"

不幸的是,您将放弃包含文件名和行号的选项,因此Visual Studio和Team Build将无法从日志中跳转到违规文件。