TFS 2015 vNext构建执行ms、xcopy等CMD命令报错求助
解决TFS 2015 vNext构建中执行CMD命令时的"Error/Warning message highlight pattern"错误
你在TFS 2015 vNext构建里执行ms、xcopy这类CMD命令时碰到的这个错误,本质是构建任务无法正确识别命令输出中的错误或警告格式,下面是几个实用的解决方向:
检查命令行任务的高级配置
找到你执行CMD命令的那个构建任务,展开「高级」选项卡,查看Error message pattern和Warning message pattern这两个字段。如果它们是空的或者填写了无效的正则表达式,就会触发这个错误。你可以恢复默认的匹配规则:- 错误模式:
^.*error.*:$(不区分大小写,匹配以"error"结尾的行) - 警告模式:
^.*warning.*:$
也可以根据你实际命令的输出格式,调整成更贴合的正则表达式。
- 错误模式:
改用脚本文件执行命令
如果你当前是用「内联脚本」模式直接写CMD命令,试试把这些命令保存成一个.bat或.cmd文件,然后在构建任务里选择「脚本路径」,指向这个文件。这种方式下,TFS对输出解析的敏感度会降低,不容易因为格式匹配问题报错。禁用错误警告解析(临时应急方案)
如果不需要TFS自动识别命令输出里的错误和警告,可以在高级设置里把Fail on standard error设为false,同时把错误和警告匹配模式设为^$(一个永远匹配不到内容的正则)。这样构建会只根据命令的退出码判断是否成功,跳过输出解析步骤。验证命令本地执行的输出
先在本地机器上手动执行同样的ms、xcopy命令,看看输出有没有异常内容,比如特殊字符、乱码或者不符合常规格式的提示。这些异常输出可能会干扰TFS的解析逻辑,导致匹配模式失效。比如xcopy如果有交互提示(比如确认覆盖),记得加上/Y参数跳过交互,避免输出额外内容。
内容的提问来源于stack exchange,提问作者Shubh Rocks Goel
相关产品推荐
相关产品推荐

