DotNetCore跨平臺~dotnet pack打包詳細介紹
dotnet pack 命令生成項目并創建 NuGet 包。這個操作的結果是兩個 nupkg 擴展名的包。一(yi)個包含代碼,另一(yi)個包含調試符(fu)號。
該項目被依賴的 NuGet 包裝被添加到 nuspec 文件,因此,他們能夠在安裝包時得到解決。
默認情況下,項目到項目之間的引用是不打包到項目中的。如果你想那樣做,你需要在你的依賴中引用需要項目的 type 節點(dian)設(she)置為(wei) “build” ,設(she)置就像下面的例子:
{
"version": "1.0.0-*",
"dependencies": {
"ProjectA": {
"target": "project",
"type": "build"
}
}
}
默認情況下,dotnet pack 首先生成項目。如果你想避免這樣,傳遞 --no-build 選項。這在持續集成(CI)構建場景(jing),正如你知道(dao)代碼(ma)僅(jin)僅(jin)是(shi)(shi)預(yu)生成的示例,會是(shi)(shi)有(you)用(yong)的。
dotnet pack [–output] [–no-build] [–build-base-path] [–configuration] [–version-suffix] []
dotnet pack命(ming)令編譯(yi)代碼(ma)并生(sheng)(sheng)成(cheng)一個(ge)NuGet包,具體來說就是在(zai)bin\Debug目錄下生(sheng)(sheng)成(cheng)一個(ge).nupkg文(wen)件和(he)一個(ge).symbols.nupkg文(wen)件。
生成版本號
dotnet pack用來生成nuget包,在(zai)google上找了一(yi)下,添加(jia)版本號的方法,在(zai)官(guan)方參數里并沒(mei)有找到,使(shi)用下面代碼可以手動加(jia)上版本號!
發布帶版本號:dotnet pack .\src\example\example.csproj -o c:\published\example -c Release /p:Version=1.2.3
一些其它的(de)參數
dotnet pack
打包當前項目。
dotnet pack ~/projects/app1/project.json
打包 app1 項目。
dotnet pack --output nupkgs
打包(bao)當前的應(ying)用程序,并(bing)將生成(cheng)的包(bao)放置到指定的文件(jian)夾中。
dotnet pack --no-build --output nupkgs
打包當前的項目到指(zhi)定(ding)的文件夾中,并跳過生成步驟。
dotnet nuget push foo.nupkg -k 4003d786-cc37-4004-bfdf-c4f3e8ef9b3a -s //customsource/
將(jiang)包推(tui)送到服務器,并將(jiang)其(qi)發(fa)布。