驻马店专业做网站公司,外包建网站多少钱,网站开发了解客户需求,济南地区做企业网站的公司目录 1、您的项目 2、创建 .nuspec 文件 3、一张图片胜过一千个拉取请求 4、包括自述文件 MD 文件 5、构建软件包 6、将包部署到 Nuget.Org 7、手动上传软件包 8、自动化和脚本化部署 9、我们如何构建和部署 ErrLog.IO Nuget 包 10、Nuget统计数据 11、最后的思考 创建 Nuget 包… 目录 1、您的项目 2、创建 .nuspec 文件 3、一张图片胜过一千个拉取请求 4、包括自述文件 MD 文件 5、构建软件包 6、将包部署到 Nuget.Org 7、手动上传软件包 8、自动化和脚本化部署 9、我们如何构建和部署 ErrLog.IO Nuget 包 10、Nuget统计数据 11、最后的思考 创建 Nuget 包是一个相对简单的过程但第一次可能有点令人生畏。本教程将逐步引导您完成该过程。 Microsoft 提供了有关 Nuget 的全面文档但我们在此处简化了该过程以提供帮助。 1、您的项目 理想情况下Nuget 包应为 .NET Framework 类库。在我们的实例中我们使用一个 C# 实例并且该包在所有意图中都是一个普通的类库。 要包含在包中的任何文件如文档或 readme.md 文件都应包含在项目中。 2、创建 .nuspec 文件 Nuget 包的主要组件是 .nuspec 文件。这是一个表示包的 XML 文件包含 Nuget.org 发布包所需的所有信息。 虽然不是必需的但如果将 .nuspec 文件包含在项目的根目录中则会使工作变得更容易一些。 空的 .nuspec 文件如下所示。这是可用于创建第一个包的基本结构。 XML格式 ?xml version1.0?
package xmlnshttp://schemas.microsoft.com/packaging/2013/05/nuspec.xsdmetadata id/idversion/versiontitle/titleauthors/authorsowners/ownerslicenseUrl/licenseUrlprojectUrl/projectUrliconUrl/iconUrlrequireLicenseAcceptancefalse/requireLicenseAcceptancedescription/descriptionreleaseNotes/releaseNotescopyright/copyrighttags/tagsdependenciesdependency id //dependenciessummary/summary/metadatafilesfile src target //files
/package 一个真实的例子 - 我们的 ErrLog.IO.Nuspec 文件 XML格式 ?xml version1.0?
package xmlnshttp://schemas.microsoft.com/packaging/2013/05/nuspec.xsdmetadata iderrlog.io/idversion1.1.18/versiontitleErrLog.IO Error and Exception Logging Tool/titleauthorsMatthew Proctor, Michael Sanders, Alastair Bateman/authorsownerskutamo/ownerslicenseUrlhttps://errlog.io/terms/licenseUrlprojectUrlhttps://errlog.io/docs/getting-started/projectUrliconUrlhttps://www.errlog.io/images/errlog_dark_logo.png/iconUrlrequireLicenseAcceptancefalse/requireLicenseAcceptancedescriptionErrLog.IO is an exception and error logging tool/descriptionreleaseNotesBug fixes and performance improvements /releaseNotescopyrightCopyright 2017 Kutamo Pty. Ltd./copyrighttagsexceptions web http error logging/tagsdependenciesdependency idNewtonsoft.Json version10.0 //dependenciessummaryErrLog.IO is an exception and error logging tool./summary/metadatafilesfile srcreadme.md target //files
/package 必需的 .nuspec 元素 元素描述或细节id不区分大小写的包标识符该标识符在 nuget.org 中必须是唯一的。ID 不能包含对 URL 无效的空格或字符并且通常遵循 .NET 命名空间规则。version包的版本遵循以下模式。请确保为每个后续包部署更新此值。major.minor.patchdescription用于 UI 显示的包的长描述 - 这应该是对包及其提供的功能的描述。authors以逗号分隔的包作者列表与 nuget.org 上的配置文件名称匹配。 有用但可选的 .nuspec 元素 元素描述或细节title只需包的标题通常在 UI 中显示为 nuget.org 和 Visual Studio 中的包管理器。如果未指定则使用包 ID。projectUrl程序包主页的 URL通常显示在 UI 显示和 nuget.org 中。licenseUrl包许可证的 URL如果有。iconUrl具有透明背景的 64x64 图像的 URL用作 UI 显示中包的图标。这必须是完全限定的 URL。如果未指定则包将具有默认的 Nuget 徽标。releaseNotes在此版本的包中所做的更改的简要说明。copyright软件包的版权详细信息。 .nuspec 文件具有许多其他配置选项此处记录了这些选项。 3、一张图片胜过一千个拉取请求 为了帮助您的软件包与 Nuget.org 库中的数千个其他软件包区分开来创建自己的徽标是个好主意。 徽标必须是具有透明背景的 64x64 像素图像并且包含在 .nuspec 文件的元素中。iconUrl/iconUrl 4、包括自述文件 MD 文件 readme.md 文件是向用户提供有关如何使用包的说明的好方法。 安装包后这将显示在 Visual Studio 中并使用 markdown 编写。 您可以在此处查看我们的自述文件。 5、构建软件包 创建 .nuspec 文件后现在可以生成包了 Nuget.Org 提供了一个应用程序 nuget.exe用于将库捆绑到 Nuget 包中。如果使用的是 Visual Studio则应该已经安装了此软件也可以从 nuget.org/downloads 下载它。 Nuget.exe 需要从项目文件夹内运行因此最简单的方法是从命令提示符或 powershell 窗口进入此文件夹。 cd \your_project_folder\ Nuget.Exe 包存储库 如果你的库使用任何包则需要告诉 Nuget 它们在电脑上的位置。这是通过使用 -Set repositoryPath 参数运行 nuget.exe 来完成的。 如果使用的是 Visual Studio则包文件夹通常位于解决方案的根文件夹中。 nuget.exe config -Set repositoryPath\full-path-to-your-packages-folder\ 现在我们可以创建包了。在下面的示例中我们将生成配置设置为 Release。 nuget.exe pack -IncludeReferencedProjects -properties ConfigurationRelease 使用这些选项Nuget 将创建一个 .nupkg其中包含任何引用的包和项目。 使用以下格式自动创建包文件名[package id].[package version].nupkg 例如最近的软件包文件名是 errlog.io.1.1.18.nupkg。ErrLog.IO 6、将包部署到 Nuget.Org 准备好 .nupkg 文件后现在可以将其部署到 Nuget.Org。 此时我们假设您已经在 Nuget.Org 上创建了一个帐户并创建了一个 API 密钥。 7、手动上传软件包 只需访问 https://www.nuget.org/packages/manage/upload即可将 .nupkg 文件上传到 nuget。 Nuget 将打开包读取 .nuspec 文件然后发布包只需一个步骤即可完成。 8、自动化和脚本化部署 NuGet.exe 能够自动上传包 - 这意味着你可以编写脚本来自动生成和部署包无需交互。 若要通过 nuget.exe 上传包首先需要设置 API 密钥。您可以在 Nuget.Org 上的帐户中创建 API 密钥。 nuget.exe config setApiKey aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee 设置 API 密钥后现在可以使用 Nuget.Exe 将包推送到 Nuget.Org。这听起来很奇怪不管你说多少次。 nuget.exe push [your-package-filename].nupkg -Source https://www.nuget.org/api/v2/package 方便的提示 该命令还支持通配符因此您只需使用单个命令即可自动推送文件夹中的任何 .nupkg 文件。push nuget.exe push *.nupkg -Source https://www.nuget.org/api/v2/package 9、我们如何构建和部署 ErrLog.IO Nuget 包 我们使用一个简单的批处理文件来自动生成和部署我们的 Nuget 包我们很高兴在下面分享它对一些项目进行了模糊处理。ErrLog.IO REM Move to project folder
cd E:\ErrLog\ErrLogNuget\REM Configure Nuget Settings
nuget config -Set repositoryPathE:\ErrLog\packages
nuget setApiKey aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeeeREM Create Nuget Package
nuget pack -IncludeReferencedProjects -properties ConfigurationReleaseREM Deploy to Nuget.Org
nuget push *.nupkg -Source https://www.nuget.org/api/v2/package 10、Nuget统计数据 Nuget 包页提供了包下载的便捷摘要以及数据透视表形式的更多详细信息使你能够查看每个版本和每个客户端类型的下载。 11、最后的思考 部署用于全球分发的 Nuget 包很容易但也很容易意外部署损坏的包因为测试是你的责任。 请确保你有一个可靠的测试过程以便在发布包后立即下载和验证包以确保你的用户有一个出色且无错误的体验。