TFS 生成过程检测错误,Visual Studio 生成过程不会给出错误

本文关键字:错误 过程 出错 检测 TFS Visual Studio | 更新日期: 2023-09-27 18:30:38

我的解决方案可以正确构建,在我的工作站上没有错误,而同一源在使用 TFS 构建时给出错误。

该解决方案项目面向 .NET 4.0,我在工作站上使用 VisualStudio 2012。使用 tfs.visualstudio.com (tfspreview.com) 保留源代码,我尝试使用 tfspreview 上的托管生成控制器和我自己的生成控制器(我在服务器上使用 TFS 2012 托管)生成源代码。

我在使用动态ExpandoObject的代码中出现错误。

为什么我的解决方案无法基于 TFS 构建?

如果需要,我可以提供更多细节。

TFS 生成过程检测错误,Visual Studio 生成过程不会给出错误

您是否尝试过托管构建以查看是否有效?

肯定是扩展对象吗? 如果您注释掉该代码,构建会成功吗?

你能从构建日志中发送摘录吗?

我将把它作为一个答案发布,因为它解决了这个奇怪的问题。

该项目的一个解决方案有两个单独的引用,指向同一个开源库。一个到下载的预编译库,另一个到另一个项目,我在其中保存了同一库的源代码。第一个是由Nuget添加的,第二个是手动添加的。

实际执行此操作(添加同一程序集的两个引用)的可能性可能是Visual Studio或Nuget中的一个错误。后来当我尝试重建这个错误时,出现了一条错误消息,指出已经引用了特定的程序集名称。

对于编译,我知道 TFS 生成代理仅考虑预编译程序集(Nuget 包)并引发错误。

Visual Studio考虑了我修改为与ExpandoObject一起使用的程序集源代码。

手动调用生成命令会产生与 TFS 相同的错误。

我删除了两个引用,只添加了一个(无论如何无法再次添加另一个)。这平衡了我的解决方案的 TFS 和 VS 的生成行为。

我知道这很奇怪,我仍然不记得最初是如何发生的双重引用错误。我的猜测是,可以通过手动编辑.proj文件来重建此错误。