Visual Studio Team Services 中的清空构建工件

Empty build artifacts in Visual Studio Team Services

我在 Visual Studio Team Services 中有一个构建定义,步骤如下:

Visual Studio 构建步骤中的 MSBuild 参数如下:

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

复制和发布构建工件中的复制根设置为 $(build.stagingDirectory),内容设置为 ***.*,工件名称设置为 drop。

构建成功,但是当我查看 Artifacts 时,它只是一个空 drop.zip。

查看发布工件步骤的日志,它说

2016-04-28T07:37:41.7047278Z Executing the powershell script: C:\LR\MMS\Services\Mms\TaskAgentProvisioner\Tools\agents.98.1\tasks\CopyPublishBuildArtifacts.0.22\CopyPublishBuildArtifacts.ps1
2016-04-28T07:37:41.8467280Z Preparing artifact content in staging folder C:\a\a...
2016-04-28T07:37:41.9187272Z Total files copied: 0.
2016-04-28T07:37:42.3778918Z Max Concurrent Uploads 2, Max Creators 1
2016-04-28T07:37:42.4218914Z Found 0 files to upload.
2016-04-28T07:37:42.4268927Z Created 0 files without uploading content. Total files processed 0
2016-04-28T07:37:42.4288961Z Uploaded artifact 'C:\a\a\drop' to container folder 'drop' of build 38.
2016-04-28T07:37:42.6274164Z Associated artifact 31 with build 38

为什么没有要上传的文件?我希望最终创建一个 web 部署包,然后我可以将其部署为 azure web 应用程序,但首先获取该包似乎不起作用。

编辑:当我 运行 在本地使用相同的参数构建 msbuild 时,我得到一个带有 bin 和 obj 子目录的工件目录,其中包含一堆 .nupkg 文件、一些 dll 和其他一些杂七杂八的东西,而不是 .压缩文件。似乎我遗漏了什么,但我能找到的所有教程都告诉我使用这些 msbuild 参数。

根据您的描述,您正在构建一个 Asp.Net Core 项目。那么问题可能是由您使用的参数引起的。 “$(build.stagingDirectory)”文件夹中没有使用此参数生成的文件。尝试将参数设置为

"/t:Build,FileSystemPublish
/p:PublishConfiguration=$(BuildConfiguration)
/p:PublishOutputPathNoTrailingSlash=$(Build.SourcesDirectory)\{yourProjectName}\artifacts\bin$(BuildConfiguration)\Publish"

然后从

复制文件

"$(Build.SourcesDirectory)\{yourProjectName}\artifacts\bin$(BuildConfiguration)\Publish".

参考这个link了解详情:Build and Deploy your ASP.NET 5 Application