【发布时间】:2021-08-29 15:16:07
【问题描述】:
我正在尝试使用发布配置文件发布 azure function v1.0,发布配置文件的内容如下所示
<?xml version="1.0" encoding="utf-8"?>
<!--
https://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration>Release</Configuration>
<Platform>Any CPU</Platform>
<PublishDir>C:\New folder</PublishDir>
<PublishProtocol>FileSystem</PublishProtocol>
<TargetFramework>net48</TargetFramework>
</PropertyGroup>
</Project>
我们在下面给出的 msbuild 命令中使用了这个发布配置文件(FolderProfile 是我们在命令中使用的发布配置文件的名称)
C:\code\msbuild "mufunctionapp.csproj" /t:Rebuild /p:Configuration=Release;PublishProfile=PublishProfiles/FolderProfile
但在运行此命令后,没有任何内容被复制(发布)到发布配置文件中指定的文件夹(C:\New 文件夹)中。但我可以看到发布工件(二进制文件)被复制到 obj\Release\net48\PubTmp\Out\bin
但如果我在 Visual Studio 2019 中使用相同的发布配置文件,则发布工件(二进制文件)将被复制到发布配置文件中指定的文件夹中。
我想在 CI 中使用带有给定发布配置文件的 msbuild 命令发布二进制文件,但由于它在本地无法运行,我无法在 CI 管道中使用 msbuild。
如果我在 MSBUILD 或发布配置文件中做错了什么,请告诉我。
【问题讨论】:
-
你可以尝试使用`
`代替 <PublishDir>。 related document -
它不工作@DylanZhu-MSFT
-
尝试添加
/p:DeployOnbuild = true,删除/t:Rebuild
标签: .net visual-studio msbuild continuous-integration azure-functions