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 构建?
如果需要,我可以提供更多细节。
您是否尝试过托管构建以查看是否有效?
肯定是扩展对象吗? 如果您注释掉该代码,构建会成功吗?
你能从构建日志中发送摘录吗?
我将把它作为一个答案发布,因为它解决了这个奇怪的问题。
该项目的一个解决方案有两个单独的引用,指向同一个开源库。一个到下载的预编译库,另一个到另一个项目,我在其中保存了同一库的源代码。第一个是由Nuget添加的,第二个是手动添加的。
实际执行此操作(添加同一程序集的两个引用)的可能性可能是Visual Studio或Nuget中的一个错误。后来当我尝试重建这个错误时,出现了一条错误消息,指出已经引用了特定的程序集名称。
对于编译,我知道 TFS 生成代理仅考虑预编译程序集(Nuget 包)并引发错误。
Visual Studio考虑了我修改为与ExpandoObject一起使用的程序集源代码。
手动调用生成命令会产生与 TFS 相同的错误。
我删除了两个引用,只添加了一个(无论如何无法再次添加另一个)。这平衡了我的解决方案的 TFS 和 VS 的生成行为。
我知道这很奇怪,我仍然不记得最初是如何发生的双重引用错误。我的猜测是,可以通过手动编辑.proj文件来重建此错误。