繁体   English   中英

TFS 2015 Visual Studio Build-Package .zip未创建

[英]TFS 2015 Visual Studio Build - Package .zip not being created

我正在尝试构建解决方案并将Web应用程序打包到要部署的Web部署(.zip)程序包中。

我使用以下MSBuild参数添加了Visual Studio Build步骤:

/ p:DeployOnBuild = True / p:WebPublishMethod = Package / p:PackageAsSingleFile = true / p:PackageLocation =“ $(build.artifactstagingdirectory)\\”

我已经设置了“ 复制和发布构建工件”步骤,将所有.zip文件复制到放置文件夹中。

构建成功完成,但没有任何内容复制到放置文件夹,因为没有创建的.zip软件包。

因此,当我在TFS服务器上查看时,“ a”文件夹中唯一的东西是一个空的“ drop”文件夹。 在“ s”文件夹中是解决方案目录,其中包含PrecompiledWeb文件夹。 不知道那是什么,但看起来与部署程序包不一样(而且它不是.zip)。

有任何想法吗?

我已经在使用VSTS和TFS 2015.2.1的VS2015 MVC Web应用程序上尝试了相同的方法。 我必须对Visual Studio构建中的Build参数做些微更改。 那就是删除/ p:PackageLocation =“ $(build.artifactstagingdirectory)\\”中的尾随“ \\”。

这是我传递给Visual Studio构建步骤的参数

/p:DeployOnBuild=True /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:PackageLocation="$(build.artifactstagingdirectory)"

然后,我使用了“复制和发布的构建工件”(在VSTS中已弃用,您应该使用“复制”任务和“发布”任务代替此任务),如下所示

在此处输入图片说明

这给我输出如下。

在此处输入图片说明

首先建议您手动在构建代理中进行远程操作,并通过带有参数的MSBuild命令行构建项目,以查看项目是否正确构建。

这将缩小与构建代理或构建定义上的环境有关的问题。

您应该直接使用/p:PackageLocation=$(build.stagingDirectory

此外,由于您有Web应用程序中引用的多个程序集。 还请仔细检查以正确顺序构建或正确引用的依赖项。

确保已安装Visual Studio的ASP.NET开发工作负载。

如果DeployOnBuild无效,则可能需要使用VS设置工具安装ASP.NET开发“工作负载”。

有特定的.targets文件,如果它们不存在,则会导致这些参数被静默忽略。 安装此程序将添加这些.targets并使参数变为活动状态,从而允许创建.zip。

对我而言(VS 2017)缺少但需要的相关目标文件(或无论如何是其中一个)是:

C:\\ Program Files(x86)\\ Microsoft Visual Studio \\ 2017 \\ Professional \\ MSBuild \\ Microsoft \\ VisualStudio \\ v15.0 \\ Web \\ Microsoft.Web.Publishing.targets

如果缺少该组件,则需要按上述步骤进行安装,如果已安装,则存在另一个问题。 ;)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM