新闻中心
.NET怎么创建一个NuGet包并发布_NuGet包创建发布流程
首先配置项目元数据并启用包生成,接着构建项目产出.nupkg文件,然后注册nuget.org账号获取API Key,使用dotnet nuget push命令发布包,最后通过更新版本号重新发布新版本。

创建并发布一个 .NET 的 NuGet 包并不复杂,只要掌握基本流程和关键配置。下面是一个清晰、实用的步骤指南,帮助你从零开始打包并发布到 nuget.org。
1. 准备项目并启用包生成
要创建 NuGet 包,首先需要一个类库项目(Class Library)。确保项目格式为 SDK 风格(推荐使用 .NET Standard 或 .NET Core/.NET 5+)。
在项目文件(.csproj)中添加必要的元数据,这些信息会显示在 NuGet 包页面上:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<PackageId>MyCompany.MyLibrary</PackageId>
<Version>1.0.0</Version>
<Authors>Your Name</Authors>
<Company>MyCompany</Company>
<Description>A short description of your library.</Description>
<PackageTags>example;utility</PackageTags>
<PackageProjectUrl>https://github.com/yourname/MyLibrary</PackageProjectUrl>
<RepositoryUrl>https://github.com/yourname/MyLibrary</RepositoryUrl>
<RepositoryType>git</RepositoryType>
<Copyright>© MyCompany. All rights reserved.</Copyright>
<PackageReleaseNotes>Initial release.</PackageReleaseNotes>
<strong><GeneratePackageOnBuild>true</GeneratePackageOnBuild></strong>
</PropertyGroup>
</Project>
说明:
- GeneratePackageOnBuild:设置为 true 后,每次构建都会生成 .nupkg 文件,方便测试。
- TargetFramework:根据兼容性选择 netstandard2.0、net6.0 等。
- PackageId:必须在 nuget.org 唯一。
2. 构建项目生成 .nupkg 包
保存项目文件后,在命令行运行:
dotnet build
构建成功后,在 bin/Debug 或 bin/Release 目录下会生成 .nupkg 文件。这是你的 NuGet 包。
你可以用 NuGet Package Explorer 打开它,检查内容和元数据是否正确。
3. 注册 nuget.org 账号并获取 API Key
前往 htt
ps://www.nuget.org 注册账号(如果还没有)。
登录后,进入“API Keys”页面创建一个新的密钥:
PHPWind 9.0 模板开发
PHPWind(简称:PW,中国国家版权局著作权登记号为:2004SR06082)的使命是让网站更具价值,让更多人从网络中享受便利,以提升生活品质。 PHPWind的两位创始人王学集、林耀纳于2003年发布了PHPWind的前身版本ofstar,并发展成为包含BBS、CMS、博客、SNS等一系列程序的通用型建站软件。至今累计已有超过120万网站使用phpwind,每天还有1000个新增网站,这些
271
查看详情
- 选择“Create a new API key”
- Description 填写用途,如“My First Package”
- Scope 选择“Push new packages”
- Include package named: 填写你的 PackageId(支持通配符)
- 点击“Create”生成密钥
复制生成的 API Key(只显示一次,务必保存好)。
4. 使用命令行发布包
在项目目录下运行以下命令推送包:
dotnet nuget push "bin/Debug/MyCompany.MyLibrary.1.0.0.nupkg" --api-key YOUR_API_KEY --source https://api.nuget.org/v3/index.json
如果一切正常,你会看到“Your package was pushed.”的提示。
稍等几分钟后,就可以在 nuget.org 搜索到你的包了。
5. 更新和重新发布
修改代码后,只需更新项目文件中的 Version 字段(如改为 1.0.1),然后重新构建并推送即可。
注意:nuget.org 不允许覆盖已发布的版本,必须使用新版本号。
基本上就这些。只要配置好项目元数据,生成包和发布都很简单。关键是确保包名唯一、版本递增、API Key 安全保管。
以上就是.NET怎么创建一个NuGet包并发布_NuGet包创建发布流程的详细内容,更多请关注其它相关文章!
# git
# js
# 关键词竞价排名营销案例
# 金华网站建设培训心得
# 长沙谷歌seo哪家好用
# 福州晋安网站推广
# 前端开发网站建设模板
# seo技巧如何做
# 三级营销的推广方法
# 四川全网营销推广加盟
# 邛崃网站如何推广的呢
# 普洱抖音seo
# 序列化
# 这是
# 是一个
# 布包
# 操作指南
# 如何将
# 命令行
# 新和
# 国家版权局
# 创建一个
# .net
# microsoft
# github
# json
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
抓大鹅解压小游戏 抓大鹅摸鱼解压入口
AO3官方在线访问地址 Archive of Our Own最新镜像合集
C++ typeid如何获取类型信息_C++ RTTI运行时类型识别用法
J*aScript中在Map循环中检测并处理空数组元素
CSS Grid如何控制元素对齐_align-items与justify-items组合使用
Python中高效且防溢出的双曲正弦计算:基于对数空间的优化策略
荣耀Play7TPro怎样在信息App置顶客服对话_iPhone荣耀Play7TPro信息App置顶客服对话【优先查看】
如何在离线环境中使用Composer_Composer离线安装依赖包的技巧与策略
必由学官方登录入口 必由学教师学生账号快速访问
深入理解rpy2中的类型转换:优化Python对象到R矩阵的映射
Win10自动更新怎么关闭 Win10永久关闭系统更新的两种方法【终极版】
为什么简单的XML文件也会解析失败? 检查隐藏的非打印字符(如BOM)的方法
c++如何使用std::memory_order控制原子操作顺序_c++ C++11内存模型详解
天眼查怎么看公司融资情况 天眼查企业融资历史查询步骤【攻略】
J*a 递归快速排序中静态变量的状态管理与陷阱
Angular中父组件异步更新子组件复选框状态的实践指南
一加Ace 6T实拍样张首次公布!李杰:主摄实力完全看齐4K档性能旗舰
谷歌邮箱网页版官方页面入口 谷歌邮箱网页端快速访问
如何将HTML表格多行数据保存到Google Sheets
QQ邮箱正确登录入口_QQ邮箱官方网站使用地址
CSS布局:解决全屏元素100%尺寸与外边距导致的页面溢出问题
抖音小游戏合成大西瓜免费秒玩入口链接 抖音小游戏热门合集秒玩网站
微博网页版首页入口 微博电脑端官网登录链接
HTML空白字符处理机制:渲染、DOM与编码实践
微信网页版扫码登录入口 微信网页版二维码登录入口
C++ vector二维数组定义_C++ vector of vector用法
圆通快递查询实时追踪 圆通物流包裹状态快速查看
单12V-2×6实现为RTX 5090供电750W!甚至都没敢跑分
如何在Python中使用Optional类型处理可变对象并避免Pylint警告
解决J*aScript中重复选择项的确认对话框显示问题
深入理解Google Cloud Datastore查询:祖先路径与数据一致性
从J*aScript对象中精确提取指定属性的教程
AI抖音网页版免费视频入口 AI抖音网页端最新视频实时观看
lar*el怎么安全地存储和获取配置文件中的敏感信息_lar*el敏感信息安全存储方法
火锅吃太多会怎样 火锅吃太多会上火吗
QQ邮箱官方网页版登录 QQ邮箱个人邮箱快速访问
俄罗斯搜索引擎Yandex指南 附2025年免登录官网入口
晋江读书网页版在线登录 晋江读书电脑版官网
免费抖音短视频入口_抖音网页版短视频免费通道
三星GalaxyZFold5怎样在相册制作折叠屏分镜_iPhone三星GalaxyZFold5相册制作折叠屏分镜【创意编辑】
Lar*el Form Request中唯一性验证在更新操作中的正确实现
MongoDB聚合管道:正确匹配对象数组中_id的方法
qq游戏大厅官方下载_qq游戏免费下载安装入口
Web Components中自定义开关组件状态同步的常见陷阱与解决方案
ACG动漫手机版官网入口 手机ACG动漫APP在线观看正版
mcjs网页版在线存档 mcjs云存档登录入口
俄罗斯Yandex免登录入口_Yandex搜索引擎官网一键直达
HTML元素状态管理:根据DIV内容动态启用/禁用按钮
c++ 命名空间怎么用 c++ namespace使用指南
海棠电脑版入口_通过电脑访问海棠官网阅读


2025-11-09
浏览次数:次
返回列表