`dotnet pack` 命令生成項目並創建 NuGet 包。這個操作的結果是兩個 `nupkg` 擴展名的包。一個包含代碼,另一個包含調試符號。 該項目被依賴的 NuGet 包裝被添加到 nuspec 文件,因此,他們能夠在安裝包時得到解決。 ...
說明:本文是個人翻譯文章,由於個人水平有限,有不對的地方請大家幫忙更正。
原文: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
打包當前的項目到指定的文件夾中,並跳過生成步驟。