1

我正在努力使用本地 TFS 为 DocFX 项目设置持续部署过程。

此处描述了该过程,但是示例演练适用于 VSTS,并且我有本地 TFS(2013 版)。基本思想是在每次签入时构建和部署文档网站。该流程使用的DocFx Build Tasks扩展似乎支持本地 TFS ......我只是看不出如何让它工作!

我有一个包含单个 C# 项目的 VS 解决方案,该项目具有对 docfx.console 版本 2.38.1(最新)的 Nuget 引用。当我在本地 PC 上构建 VS 时,_sites 文件夹会正确填充 HTML。但是,在构建服务器上构建时,构建失败并显示“警告 MSB4078:MSBuild 不支持项目文件“DocFx.csproj”,无法构建。

然后我发现了DocFx Build Tasks扩展,它看起来可以解决我的问题。

我已经下载了 .VSIX,但不知道在哪里以及如何安装它。

如果我直接在构建服务器(或我的本地 PC)上运行它,则会出现错误“此扩展无法安装在任何当前安装的产品上”。出现。这是来自安装日志:

31/08/2018 14:31:54 - Supported Products : 
31/08/2018 14:31:54 - Microsoft.VisualStudio.Services
31/08/2018 14:31:54 - Version : 
31/08/2018 14:31:54 - 
31/08/2018 14:31:54 - References : 
31/08/2018 14:31:54 - Signature Details...
31/08/2018 14:31:54 - Extension is not signed.
31/08/2018 14:31:54 - 
31/08/2018 14:31:54 - Searching for applicable products...
31/08/2018 14:31:54 - Found installed product - Microsoft Visual Studio 2012 Shell (Integrated)
31/08/2018 14:31:54 - Found installed product - Global Location
31/08/2018 14:31:54 - Found installed product - ssms
31/08/2018 14:31:54 - Found installed product - Visual Studio Community 2017
31/08/2018 14:31:54 - Found installed product - Visual Studio Build Tools 2017 (2)
31/08/2018 14:31:54 - VSIXInstaller.NoApplicableSKUsException: This extension is not installable on any currently installed products.

我在 TFS 2013 门户中似乎也没有上传扩展的选项(尽管后来的版本似乎有这个)。

我需要做什么?

4

1 回答 1

1

基于错误消息“' warning MSB4078: The project file "DocFx.csproj" is not supported by MSBuild and cannot be built.'”似乎您使用的 MSBuild 版本不正确来构建项目。参考类似的线程:使用 MSBuild 无法构建的项目 Ctrl + Shift + B 构建成功

对于 TFS 2013 + VS 2017 组合,您可能需要将 更改ToolPath为完整的 MSBuild 路径:"C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\MSBuild\15.0\Bin". 参考这个线程:TFS 2013 and Visual Studio 2017 Syntax

此外,您还可以尝试MSBuild arguments在构建定义中指定。如:/tv:15.0 /p:VisualStudioVersion=15.0用VS2017构建。

TFS 2013 不支持DocFx 构建任务扩展。要使用该扩展,您需要迁移到 vNext 构建(TFS 2015 和更高版本)。要安装扩展,请参阅安装 Team Foundation Server (TFS) 的扩展

建议您迁移到现代版本的 TFS(vNext 构建系统)。了解为什么应该切换到 Build VNext

于 2018-09-01T08:40:45.357 回答