TeamCity设置用于构建Visual Studio解决方案,该解决方案可由许多开发人员在本地构建。但是,当TeamCity运行构建时,它总是会使构建失败,即使MSBuild没有输出错误:
[08:49:02] [步骤1/1]处理退出代码1
[08:49:02] [步骤1/1] MSBuild输出
[08:49:02] [MSBuild输出]
[08:49:02] [MSBuild输出] 183警告
[08:49:02] [MSBuild输出] 0错误(s)
[08:49:02] [MSBuild输出]
[08:49:02] [MSBuild输出] Time Elapsed 00:01:10.65
[08:49:03] [步骤1/1]步骤构建解决方案(Visual Studio(sln))失败
为了进行比较,这些是本地Visual Studio中构建输出的最后一行:
54>
54>构建成功。
54>
54>时间流逝00:00:11.37
==========重建全部:46成功,0失败,18跳过==========
奇怪的是,我在本地找不到一行“代码1退出过程”。我已经完成了每个项目的所有前/后构建事件。我在TeamCity的整个构建日志中找到了可能的罪魁祸首,但我找不到任何与退出代码1 相关的线索。
有趣的是,构建确实产生了有效的必要工件!
为什么我的构建退出代码1?
编辑以回应评论:
echo %errorlevel%
返回0. 答案 0 :(得分:0)
我可以想到3个问题:
如果遇到警告,看起来TeamCity未通过构建步骤 - 你能检查不是这种情况吗?
正如其他人所评论的那样,请尝试从命令行执行ms构建。看一下确切的命令行争论团队城市正在调用msbuild。
项目本身有“将警告视为错误”的设置,但msbuild会遵守这些规则。你定制了你的构建吗?有关详细信息,请参阅this。