由于无法加载TFS集成程序集而导致的TFS构建失败



我使用的是TFS 2012(更新1)。我有一个构建定义设置并工作良好,但突然构建开始失败,出现以下错误:

Exception Message: Could not load file or assembly 'Microsoft.TeamFoundation.VersionControl.Common.Integration, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) (type FileLoadException)
Exception Stack Trace:    at Microsoft.TeamFoundation.VersionControl.Client.Changeset.get_ArtifactUri()
   at lambda_method(Closure , ActivityContext )
   at System.Activities.Runtime.ActivityExecutor.ExecuteInResolutionContextT
   at System.Activities.InArgument`1.TryPopulateValue(LocationEnvironment targetEnvironment, ActivityInstance activityInstance, ActivityExecutor executor)
   at System.Activities.ActivityInstance.InternalTryPopulateArgumentValueOrScheduleExpression(RuntimeArgument argument, Int32 nextArgumentIndex, ActivityExecutor executor, IDictionary`2 argumentValueOverrides, Location resultLocation, Boolean isDynamicUpdate)
   at System.Activities.ActivityInstance.ResolveArguments(ActivityExecutor executor, IDictionary`2 argumentValueOverrides, Location resultLocation, Int32 startIndex)
   at System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation)

我在之前成功构建和失败构建之间所做的唯一一件事是向Windows Service项目添加一个安装程序类。不知道这将如何在构建服务器上导致此错误。

使用相同构建过程模板的其他构建定义工作良好,并且正在构建的解决方案在本地构建良好。实际上,这个错误似乎不是在构建过程本身中出现的,而是在稍后的工作流程中,当关联变更集和工作项步骤执行时出现的。

如果我在构建定义(过程->高级部分->关联变更集和工作项)中禁用此功能,则一切正常。

任何想法?

使用XML编辑器删除对程序集的所有强名称引用可能是这里的修复方法。

(Visual Studio中的XML编辑器工作得很好-右键单击有问题的构建过程模板,选择高级->查看…并选择XML编辑器)

在不知道完整设置的情况下(构建代理服务器操作系统,用于打开/编辑构建过程模板的Visual Studio版本,安装在构建代理上的Visual Studio版本),不幸的是我100%有信心。

最新更新