Team Foundation Server构建Drop到服务器 - 内容类型为“”,方法类型为“PUT”,不支持

时间:2016-03-30 10:49:12

标签: json visual-studio-2013 tfs build msbuild

我一直致力于构建一个Drop to TFS Server。只是为了上下文化,我在构建定义中引用了这个选项:

Build Definition Option

通常,此构建在删除TFS服务器时没有任何问题。我的构建仅生成安装文件(InstallShield),但是,它在“CopyDirectoryTask”任务上失败,并出现以下错误:

  

C:\ Program Files   (86)\的MSBuild \微软\ VisualStudio的\ TeamBuild \ Microsoft.TeamFoundation.Build.targets   (1565,0)请求表示方法类型的内容类型为“”   “PUT”不受支持。此方法的有效内容类型为:   application / json,application / json-patch + json,   应用/八位字节流。

更详细:

  

C:\ Program Files   (86)\的MSBuild \微软\ VisualStudio的\ TeamBuild \ Microsoft.TeamFoundation.Build.targets   (1565,0)“CopyDirectoryTask”任务意外失败。   Microsoft.VisualStudio.Services.Common.VssServiceException:The   请求表示方法类型“PUT”的内容类型为“”,即   不支持。此方法的有效内容类型为:   application / json,application / json-patch + json,   应用/八位字节流。在   System.Activities.WorkflowApplication.Invoke(活动活动,   IDictionary 2 inputs, WorkflowInstanceExtensionManager extensions, TimeSpan timeout) at System.Activities.WorkflowInvoker.Invoke(Activity workflow, IDictionary 2个输入,TimeSpan超时,   WorkflowInstanceExtensionManager扩展)在   Microsoft.TeamFoundation.Build.Tasks.WorkflowTask.ExecuteInternal()at   Microsoft.TeamFoundation.Build.Tasks.Task.Execute()at   Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()   在   Microsoft.Build.BackEnd.TaskBuilder.d__1.MoveNext()

根据我的理解,服务器在呼叫上接受的内容类型类型与发送的内容类型之间存在问题(似乎为空)。

有没有已知原因?取决于构建输出? (在我的情况下,文件夹和安装文件),从来没有与其他类型的版本的此问题。我开始认为这可能是服务器问题,因为这个过程完全由TFS处理,我无法更改提交类型。

感谢您对此问题的任何评论或帮助。

提前致谢。

1 个答案:

答案 0 :(得分:0)

由于您执行了从TFS2013到TFS2015的迁移,因此您需要确保所有服务器上的所有相关组件(Build Controller,Build Agent等)也更新到TFS2015。