C# NuGet打包和离线安装

  • A+
所属分类:.NET技术
摘要

本篇文章将介绍如何通过NuGet进行打包和离线安装,做出适用于我们自己项目的专属程序包。


1. 介绍

本篇文章将介绍如何通过NuGet进行打包和离线安装,做出适用于我们自己项目的专属程序包。

NuGet下载地址:https://www.nuget.org/downloads

 

2. NuGet打包

说明:在这里假设我们希望把bin目录内的文件打包成一个程序包。

2.1 文件结构

├── akmsg.nuspec ├── bin/ │   ├── ICSharpCode.SharpZipLib.dll │   ├── log4net.dll 

  C# NuGet打包和离线安装

2.2 nuspec文件

说明.nuspec 文件是包含程序包元数据的 XML 清单。 用于生成NuGet程序包的各项信息,包括包名、作者、描述、版本等等。

这里akmsg.nuspec的内容如下:

<?xml version="1.0" encoding="utf-8"?> <package >   <metadata>     <id>akmsg.tools</id>     <version>1.0.0</version>     <title>akmsg.tools</title>     <authors>polk6</authors>     <owners>akmsg</owners>     <requireLicenseAcceptance>false</requireLicenseAcceptance>     <license type="expression">MIT</license>     <projectUrl>http://project_url_here_or_delete_this_line/</projectUrl>     <iconUrl>http://icon_url_here_or_delete_this_line/</iconUrl>     <description>akmsg.tools</description>     <releaseNotes>Summary of changes made in this release of the package.</releaseNotes>     <copyright>Copyright 2020</copyright>     <tags></tags>   </metadata>   <files>     <file src="bin*.dll" target="lib" />    </files> </package> 

<files>指当前程序包包含的文件,这里的设置是把 bin*.dll 的所有文件都作为程序包的文件资源。
nuspec的具体配置https://docs.microsoft.com/zh-cn/nuget/reference/nuspec 

 

2.3 进行打包

命令:

nuget pack akmsg.nuspec 

执行完成后会在当前目录生成一个nupkg文件。

C# NuGet打包和离线安装

 

3. 离线安装

安装NuGet离线程序包进行以下步骤

1) 打开Visual Studio项目的【管理NuGet程序包】

C# NuGet打包和离线安装

 

 

2) 点击包管理器的【设置】按钮

C# NuGet打包和离线安装

 

 

3) 创建一个本地程序包源

C# NuGet打包和离线安装

 

 

4) 返回包管理器,程序包源切换到刚创建的源

C# NuGet打包和离线安装

 

 

5) 安装自己创建的程序包

安装完成后,在项目的packages目录就会出现刚安装的程序包

C# NuGet打包和离线安装

 

 

End
菜单加载中...