我正在通过TFS运行CI构建,构建服务器上的构建失败(不在本地)。
错误并非完全出乎意料,因为可能需要在构建服务器上安装某些内容,但构建输出中没有错误消息。
我已经编辑了构建以将输出设置为“Diagnostic”,但除了下面的常规错误之外,仍然没有任何错误。
我只得到这个错误:
异常消息:MSBuild错误1已结束此构建。你可以找到 以上有关此错误原因的更具体信息 消息。 (输入BuildProcessTerminateException)
异常堆栈跟踪:at System.Activities.Statements.Throw.Execute(CodeActivityContext 上下文中)
在System.Activities.CodeActivity.InternalExecute(ActivityInstance instance,ActivityExecutor executor,BookmarkManager bookmarkManager)
在 System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor,BookmarkManager bookmarkManager,Location resultLocation)
我可以看到错误被捕获的位置,日志文件更远,但它同样没有信息:
处理例外
将CompilationStatus设置为Failed
初始属性值
...
最终属性值
...
此部分之前没有任何问题的迹象。
有没有办法让更好的异常消息进入构建日志?
答案 0 :(得分:4)
如果没有合适的错误消息,我只需登录到构建服务器并在Visual Studio中手动运行构建。
我的具体问题是Fakes仅在Visual Studio 2012 Ultimate中可用,而构建服务器只有溢价。
答案 1 :(得分:1)
我遇到了与使用Microsoft Fakes的2个解决方案相同的问题,但在我的情况下,我在构建服务器上安装了VS2012 Ultimate(Update 3)。
我团队中的某个人已将FakesAssemblies文件夹签入TFS。如果我将构建服务器上的FakesAssemblies文件夹重命名为FakesAssemblies2并将构建设置为仅清除输出,则构建能够创建新的FakesAssemblies文件夹并创建文件。
如果我查看FakesAssemblies2文件夹(最初检入TFS的文件夹),则所有文件都标记为只读。我认为由于只读标志,构建存在覆盖这些文件的问题。