使用特定的发布配置文件通过命令行发布控制台应用程序
Posted
技术标签:
【中文标题】使用特定的发布配置文件通过命令行发布控制台应用程序【英文标题】:Publish console application via command line using specific publish profile 【发布时间】:2017-06-28 15:38:23 【问题描述】:我尝试使用预定义的发布配置文件在命令行上构建和发布我的 .NET Core 应用程序。
对于 ASP.NET Core 应用程序,此(取自 here)有效:
dotnet build -c Release /p:DeployOnBuild=true /p:PublishProfile=ReleaseFolder
但对于控制台应用程序(发布配置文件称为FolderProfile
,以下内容不起作用:
dotnet build -c Release /p:DeployOnBuild=true /p:PublishProfile=FolderProfile
它构建项目但不发布它。
那么如何使用预定义的发布配置文件发布控制台应用程序?
【问题讨论】:
【参考方案1】:发布配置文件支持是 web 目标使用的 web-SDK 的一部分。 ASP.NET Core 应用程序通常使用Microsoft.NET.Sdk.Web
,而控制台应用程序使用Microsoft.NET.Sdk
项目。
由于控制台应用程序不包含 Web SDK 的发布支持,因此您只能使用生成可部署输出的 Publish
目标。它由 dotnet cli 的 dotnet publish
命令包装,也可以用作 msbuild /t:Publish
。此发布命令不支持发布配置文件,因为它只是基于文件系统的操作。
【讨论】:
【参考方案2】:您现在可以将Microsoft.NET.Sdk.Publish sdk 添加到您的项目文件中。这将使您能够在您的项目中使用dotnet publish
。
<Project Sdk="Microsoft.NET.Sdk;Microsoft.NET.Sdk.Publish">
【讨论】:
以上是关于使用特定的发布配置文件通过命令行发布控制台应用程序的主要内容,如果未能解决你的问题,请参考以下文章
如何创建将使用特定配置文件执行 bootRun 的 gradle 任务?
菜鸟入门ASP.NET Core5:命令行配置Json文件配置Bind读取配置到C#实例在Core Mvc中使用Options