在Build Definition文件中打开Process选项卡需要多长时间

时间:2014-01-16 11:32:32

标签: tfs tfs2012 tfsbuild tfs2013

在我的项目中,在VisualStudio 2013和2012中的Build Definition文件中打开Process选项卡需要2-3分钟。

在打开其内容时,选项卡显示“正在下载自定义程序集”。

一旦完成,并显示内容,我会看到各种警告和错误,例如:

Summary: There were 0 failures, 404 errors and 15 warnings loading custom activities and services.
...
Error: Could not load file or assembly 'Infrastructure.Interface, Version=1.0.3981.21634, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
...
Error: API restriction: The assembly 'file:///C:\Users\<username>\AppData\Local\Temp\VSTFSBuild\8809fd18-08a3-4d58-8a87-35bbc833a4ed\1163529353\ThirdPartyBinaries\vjredist64\vjscor.dll' has already loaded from a different location. It cannot be loaded from a new location within the same appdomain.
...
Warning: Could not load file or assembly 'file:///C:\Users\<username>\AppData\Local\Temp\VSTFSBuild\8809fd18-08a3-4d58-8a87-35bbc833a4ed\1163529353\ThirdPartyBinaries\SQLXML 4.0\cvtschema.exe' or one of its dependencies. The module was expected to contain an assembly manifest.

有人可以告知问题是什么以及如何解决这个问题?感谢。

1 个答案:

答案 0 :(得分:1)

TFS构建控制器和代理可以拥有自定义活动,并且可以在控制器的Version control path to custom assemblies设置中指示的路径上从源代码管理中下载它们。

由于模板可能会使用这些自定义程序集中的自定义类型,因此当您打开Edit Build Definition -> ProcessQueue new build -> Parameters时,VS也需要它们。所以VS下载它们,不幸的是它没有本地缓存​​,因此每次都会下载它们。此外,VS会将程序集加载到VS进程中,这可能会导致Could not load file or assembly...错误。

正如您所发现的,解决方案是将组件减少到最低程度。