nuget打包部署完整步驟
1. 類庫項目文件增加打包信息
假設 package 名定義為 company.mydll
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework> <!-- 或其他目標框架 -->
<PackageId>company.mydll</PackageId> <!-- 包的唯一標識 -->
<Version>1.0.0</Version> <!-- 包的版本號 -->
<Authors>Your Name</Authors> <!-- 作者名稱 -->
<Description>Your package description</Description> <!-- 包描述 -->
<PackageLicenseExpression>MIT</PackageLicenseExpression> <!-- 許可證 -->
<PackageTags>tag1;tag2</PackageTags> <!-- 標簽 -->
<RepositoryUrl>https://github.com/your/repo</RepositoryUrl> <!-- 源代碼倉庫鏈接 -->
<GenerateDocumentationFile>true </GenerateDocumentationFile> <!-- 包文件中是否包含 XML 文檔, 這個xml文檔將包含 class/method/parameter的xml注釋, 包含這個XML文檔對于類庫的使用方非常重要, IDE可以為為使用方提供增加更多的幫助信息 -->
</PropertyGroup>
2. 類庫項目進行打包
下面命令會生成 nupkg 文件
# cd 到項目根目錄
# pack 命令的 include-symbols 參數, 可以包含 pdb 文件, 便于調試
dotnet pack --Configuration Release --include-symbols
3. 準備一個本地nuget 私服地址
我們可以使用 BaGet 或 NuGet.Server 或 Nexus 等軟件搭建本地的nuget 私服, 甚至可以使用本機或共享目錄作為私服, 比如 c:\local_nuget
4. 將 nuget pkg 文件推送到私服
dotnet nuget push company.mydll.1.0.0.nupkg --source http://localhost:5000/nuget
# 如果是本地目錄, 可以使用類似上面的命令, 或直接將nupkg文件復制過去即可.
5. 為本機準備一個最簡的 nuget.config 文件.
本機配置文件全路徑是: C:\Users{username}\AppData\Roaming\NuGet\NuGet.Config
當然, 我們也可以在項目根目錄下加一個 NuGet.Config 文件, 這樣該項目將優先使用項目下的 NuGet.Config.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
</packageSources>
<config>
<!-- 通過 globalPackagesFolder 設定, 下載的 nupkg 文件存放路徑 -->
<add key="globalPackagesFolder" value="D:\nuget\packages" />
</config>
</configuration>
6. 將本地nuget私服加到 nuget.config 文件.
可以直接編輯該文件, 或者使用下面命令為 nuget.config 中新增 nuget源.
nuget sources add -Name local_nuget -Source c:\local_nuget
最終 nuget.config 文件內容如下:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<packageSources>
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
<add key="local_nuget" value="c:\local_nuget" />
</packageSources>
<config>
<add key="globalPackagesFolder" value="D:\nuget\packages" />
</config>
</configuration>
7. 新項目引用 company.mydll 類庫
# cd 到項目根目錄
# 先搜索一下目標類庫的具體名稱
dotnet package search company.mydll
# 引用目標類庫
dotnet add package ompany.mydll

浙公網安備 33010602011771號