『.NET Core CLI工具文档』(十三)dotnet-publish

927 查看


图片来自网络/图文无关

说明:本文是个人翻译文章,由于个人水平有限,有不对的地方请大家帮忙更正。
原文:dotnet-publish
翻译:dotnet-publish

名称

dotnet-publish - 打包应用程序及其所有依赖到一个文件夹中,获取后准备发布

概要

dotnet publish [--framework] [--runtime] [--build-base-path] [--output] [--version-suffix] [--configuration] [<project>]

描述

dotnet publish 编译应用程序,通过读取在 project.json 文件中指定的依赖,并发布结果集的文件到一个目录。

根据便携式应用的类型,所得到的目录将包含以下内容:

  1. 便携式应用程序 - 应用程序的中间语言(IL)代码和所有应用程序的关联依赖。
    • 本地的依赖的便携式应用 - 与上面的子目录的每个本地依赖支持的平台。
  2. 自包含应用程序 - 与上述相同,并附加用于目标平台的整个运行时。

上面的类型涵盖更多细节在 便携式应用程序的类型 主题。

选项

[project]

dotnet publish 工作需要访问 project.json 文件。如果它没有通过指定的 [project] 调用,当前目录中的 project.json 将为默认值。
如果没有 project.json 可以被发现,dotnet publish 将抛出一个错误。

-f, --framework [FID]

发布给定框架标识(FID)应用程序。如果没有指定,FID 从 project.json 中读取。发现没有有效的框架时,命令将抛出一个错误。如果发现多个有效的框架,命令将发布所有有效的框架。

-r, --runtime [RID]

发布给定运行时应用程序。

-b, --build-base-path [DIR]

临时输出的目录。

-o, --output

指定在哪里放置目录的路径。如果没有指定,它将默认便携式应用程序为 ./bin/[configuration]/[framework]/ 或者 自包含应用程序为 ./bin/[configuration]/[framework]/[runtime]

--version-suffix [VERSION_SUFFIX]

定义在 project.json 文件中的版本字段什么 * 被替换。

-c, --configuration [Debug|Release]

发布时的配置。默认值是 Debug。

例子

dotnet publish

使用在 project.json 中发现的框架发布一个应用程序。如果 project.json 包含 runtimes 节点,发布 RID 为当前平台。

dotnet publish ~/projects/app1/project.json

使用指定的 project.json 发布应用程序。

dotnet publish --framework netcoreapp1.0

使用 netcoreapp1.0 框架发布当前应用程序。

dotnet publish --framework netcoreapp1.0 --runtime osx.10.11-x64

使用 netcoreapp1.0 框架和 OS X 10.10 运行时发布当前应用程序。这个 RID 必须存在于 project.json 中的 runtimes 节点。