构建不在Visual Studio Team Services中发布Web API项目(VS Online)

use*_*358 6 tfs build tfsbuild visual-studio-2013 azure-devops

我在Team Services上创建了一个VS构建定义.当我对它进行排队时,构建会成功运行,它还会为解决方案中的所有项目输出dll,但我使用Web Api2创建的服务层除外.

当我从drop位置下载工件时,我有文件夹,包含数据层,业务层和其他帮助程序项目的dll.我没有的是我可以部署到IIS的主服务层dll.

以下是我的发布设置的屏幕截图.

在此输入图像描述

我能错过什么?

Edd*_*SFT 11

您似乎正在使用构建定义的默认设置.使用这些设置,"复制文件"任务的内容为"**\bin\$(BuildConfiguration)**",而web api项目没有buildconfiguration文件夹.因此无法找到web api项目的文件.要复制这些文件,请再添加一个"复制文件"任务,并按如下方式配置设置: 在此输入图像描述

如果需要项目的部署文件,则需要按以下方式设置构建定义:

  1. /p:DeployOnBuild=true;OutDir="$(build.artifactstagingdirectory)"Visual Studio Build步骤添加参数.
  2. 删除Copy Files步骤.
  3. 设置路径的发布到$(build.artifactstagingdirectory)\\_PublishedWebsitesPublish Build Artifacts一步.

然后,您应该在drop文件夹中获取部署文件.