说明:本文是个人翻译文章,由于个人水平有限,有不对的地方请大家帮忙更正。
原文:dotnet-pack
翻译:dotnet-pack
名称
dotnet-pack
- 将代码打包成 NuGet 包
概要
dotnet pack [--output] [--no-build] [--build-base-path] [--configuration] [--version-suffix] [<project>]
描述
dotnet pack
命令生成项目并创建 NuGet 包。这个操作的结果是两个 nupkg
扩展名的包。一个包含代码,另一个包含调试符号。
该项目被依赖的 NuGet 包装被添加到 nuspec 文件,因此,他们能够在安装包时得到解决。
默认情况下,项目到项目之间的引用是不打包到项目中的。如果你想那样做,你需要在你的依赖中引用需要项目的 type
节点设置为 “build” ,设置就像下面的例子:
{
"version": "1.0.0-*",
"dependencies": {
"ProjectA": {
"target": "project",
"type": "build"
}
}
}
默认情况下,dotnet pack
首先生成项目。如果你想避免这样,传递 --no-build
选项。这在持续集成(CI)构建场景,正如你知道代码仅仅是预生成的示例,会是有用的。
选项
[project]
打包的项目。它还可以是一个 project.json
文件的路径或者是目录。如果忽略,它将默认为当前目录。
-o
, --output
[DIR]
指定生成的目录。
--no-build
打包进程中跳过生成阶段。
--build-base-path
指定临时生成产物的目录。默认情况下,它们在当前目录的 obj 目录。
-c
, --configuration [Debug|Release]
当生成项目时使用的配置。如果没有指定,将默认为 “Debug”。
例子
dotnet pack
打包当前项目。
dotnet pack ~/projects/app1/project.json
打包 app1 项目。
dotnet pack --output nupkgs
打包当前的应用程序,并将生成的包放置到指定的文件夹中。
dotnet pack --no-build --output nupkgs
打包当前的项目到指定的文件夹中,并跳过生成步骤。