使用TeamFoundation Build时出现ArgumentException

本文关键字:ArgumentException TeamFoundation Build 使用 | 更新日期: 2023-09-27 18:00:37

我正在使用Visual Studio联机管理我的源代码。我也在使用Continous Integration,这意味着我的源代码是在TFS(Visual Studio Online)上的云中编译的。我有自己的构建过程模板,还有一些代码活动。从现在起一切都很好。在我编辑了活动和模板之后,每次我开始构建时,我都会收到以下错误:

TF215097: An error occurred while initializing a build for build definition 'BuildTest'BuildTasks: 
Exception Message: Expression of type 'Microsoft.TeamFoundation.Build.Workflow.Activities.AgentReservationSpec' cannot be used for return type 'Microsoft.TeamFoundation.Build.Workflow.Activities.AgentReservationSpec' (type ArgumentException)
Exception Data Dictionary:
MS.TF.Diagnostics.Logged = True

一个奇怪的副作用是,Visual Studio中构建模板的参数顺序现在是混合的,而且还有一些参数没有在模板中定义。这种情况不仅发生在我的自定义模板上,也发生在Microsoft的默认模板上。

有人能帮我吗?

使用TeamFoundation Build时出现ArgumentException

此类错误的原因是程序集的两个版本同时提供了可见的错误类型。从中分配的值来自一个值,而分配给的值来自另一个值。

当我意外地将Microsoft.TeamFoundation程序集的加载签入到源代码管理中的自定义活动位置时,就发生了这种情况。删除这些组件使我的问题消失了。

同样值得注意的是,如果您的生成控制器上安装了不止一个版本的TFS API(多个版本的Visual Studio都会这样做)。您可能需要在项目中对TFS程序集的引用中使用显式版本(完整的强名称语法),以确保加载正确的API版本。

我在本地TFS实例中遇到了同样的问题。我从TFS中的CustomActivities文件夹中删除了所有DLL,错误就消失了。现在,第二个steop是确定导致问题的CustomAction。。。