【发布时间】:2016-09-06 20:37:45
【问题描述】:
我在 TFS 中构建工作流时遇到如下错误
TF215097: An error occurred while initializing a build for build definition
Exception Message: Cannot create unknown type '{clr-namespace:Test.Activity;assembly=Test.Activity}GenerateAssemblyVersion'. (type XamlObjectWriterException)
Exception Stack Trace: at System.Xaml.XamlObjectWriter.WriteStartObject(XamlType xamlType)
at System.Xaml.XamlServices.Transform(XamlReader xamlReader, XamlWriter xamlWriter, Boolean closeWriter)
at System.Activities.XamlIntegration.FuncFactory`1.Evaluate()
at System.Activities.DynamicActivity.OnInternalCacheMetadata(Boolean createEmptyBindings)
at System.Activities.Activity.InternalCacheMetadata(Boolean createEmptyBindings, IList`1& validationErrors)
at System.Activities.ActivityUtilities.ProcessActivity(ChildActivity childActivity, ChildActivity& nextActivity, Stack`1& activitiesRemaining, ActivityCallStack parentChain, IList`1& validationErrors, ProcessActivityTreeOptions options, ProcessActivityCallback callback)
at System.Activities.ActivityUtilities.ProcessActivityTreeCore(ChildActivity currentActivity, ActivityCallStack parentChain, ProcessActivityTreeOptions options, ProcessActivityCallback callback, IList`1& validationErrors)
at System.Activities.ActivityUtilities.CacheRootMetadata(Activity activity, LocationReferenceEnvironment hostEnvironment, ProcessActivityTreeOptions options, ProcessActivityCallback callback, IList`1& validationErrors)
at System.Activities.Validation.ActivityValidationServices.InternalActivityValidati onServices.InternalValidate()
at Microsoft.TeamFoundation.Build.Workflow.WorkflowHelpers.ValidateWorkflow(Activity activity, ValidationSettings validationSettings)
at Microsoft.TeamFoundation.Build.Hosting.BuildProcessCache.LoadFromXaml(String workflowXaml, TextExpressionImports textExpressionImports)
at Microsoft.TeamFoundation.Build.Hosting.BuildControllerWorkflowManager.PrepareReq uestForBuild(WorkflowManagerActivity activity, IBuildDetail build, WorkflowRequest request, IDictionary`2 dataContext)
at Microsoft.TeamFoundation.Build.Hosting.BuildWorkflowManager.TryStartWorkflow(WorkflowRequest request, WorkflowManagerActivity activity, BuildWorkflowInstance& workflowInstance, Exception& error, Boolean& syncLockTaken)
我已经尝试了http://blog.ehn.nu/2011/12/tfs-2010-build-troubleshooting-the-tf215097-error/ 中指定的所有方法。但我仍然在犯同样的错误
当我在我的自定义任务中使用以下代码时,我也能够找出问题正在发生
public sealed class Myclass: BaseCodeActivity
{
protected override void InternalExecute()
{
}
}
如果我使用下面的代码能够成功构建。
public sealed class Myclass: CodeActivity
{
protected override void Execute(CodeActivityContext context)
{
}
}
我能够在本地机器上成功构建上述两个代码。
BuildCodeActivity 类派生自命名空间 TfsBuildExtensions.Activities。所以我将所有依赖于此类的 dll 添加到我的 dll 所在的根文件夹中,包括 TfsBuildExtensions.Activities
我不知道为什么 BuildCodeActivity 类会抛出这个错误
【问题讨论】:
-
您使用的是哪个版本的 TFS?看来您正在使用 XAML 构建,您使用的是什么类型的项目?你之前有成功的构建吗?你最近有什么变化?你如何配置你的构建定义?所有版本都有这个问题吗?
标签: tfs build workflow tfsbuild