新闻中心
C#怎么创建 NuGet 包 C#将自己的类库打包成NuGet包并发布
创建NuGet包需准备类库项目,添加唯一PackageId等元数据,通过dotnet pack生成.nupkg文件,再用dotnet nuget push命令配合API密钥发布至NuGet.org。

创建并发布一个 NuGet 包,是将 C# 类库分享给其他开发者或在多个项目中复用的重要方式。整个过程包括:准备类库项目、添加包元数据、生成包文件(.nupkg)、以及发布到 NuGet.org 或私有源。
1. 准备类库项目
确保你有一个 .NET 类库项目(推荐使用 SDK 风格的 csproj 格式)。如果你还没有,可以用 Visual Studio 或命令行创建:
dotnet new classlib -n MyLibrary这会生成一个名为 MyLibrary 的类库项目。
2. 添加 NuGet 包元数据
打开 .csproj 文件,在 PropertyGroup 中添加必要的 NuGet 元数据,例如:
YourName
这些字段会在 NuGet.org 上显示。其中 PackageId 必须全局唯一。
3. 生成 NuGet 包 (.nupkg)
在项目目录下运行以下命令生成包:
dotnet pack -c Release成功后会在 bin/Release 目录下生成一个 .nupkg 文件,比如:MyCompany.MyLibrary.1.0.0.nupkg。
易标AI
告别低效手工,迎接AI标书新时代!3分钟智能生成,行业唯一具备查重功能,自动避雷废标项
135
查看详情
4. 发布到 NuGet.org
要发布到公共 NuGet 仓库,你需要:
- 注册一个账号:访问 nuget.org 并注册
- 获取 API Key:登录后进入「API Keys」页面,创建一个新的 key,选择包含你包名的模式(如 *),复制该 key
然后使用命令行推送包:
dotnet nuget push MyCompany.MyLibrary.1.0.0.nupkg --api-key YOUR_API_KEY --source https://api.nuget.org/v3/index.json推送成功后,你的包将在 NuGet.org 上可搜索和安装。
如果以后更新版本,只需修改 .csproj 中的 Version 字段,重新打包并推送即可。
基本上就这些。不复杂但容易忽略细节,比如包名冲突或缺少元数据导致审核警告。建议首次发布前先检查包内容:
# 可用工具查看 .nupkg 内容(本质是 zip 文件) # 解压后检查 lib/、ref/、.dll 和 .xml 文档是否正确包含以上就是C#怎么创建 NuGet 包 C#将自己的类库打包成NuGet包并发布的详细内容,更多请关注其它相关文章!
# 命令行
# 威海餐饮推广招聘网站
# 服装公众号资源网站推广
# 本地百度seo公司
# 中南建设招标网站
# 企业全年营销推广计划
# 襄阳农业网站推广价格
# 岳阳建设厅网站
# 自己的网站怎样优化
# 兴县定做网站推广联系方式
# 十大免费网站推广下载
# 抽象类
# 目录下
# 还没有
# 如果你
# 如何实现
# c#
# 如何使用
# 会在
# 自己的
# 类库
# .net
# microsoft
# 解压
# ssl
# 工具
# github
# json
# git
# js
# nuget包
相关栏目:
【
科技资讯46185 】
【
网络学院92790 】
相关推荐:
深入理解J*a编译器的兼容性选项:从-source到--release
word邮件合并后日期格式不对怎么改_Word邮件合并日期格式修改方法
Win11怎么查看电脑配置_Win11硬件配置检测工具使用
python3时间如何用calendar输出?
C++如何实现单例模式_C++设计模式之线程安全的单例写法
J*aScript动态修改指定div内所有a标签样式指南
12306怎么选座位选到安静区_12306选座安静区域选择策略
BetterDiscord插件中安全更新用户简介的实践指南
京东京造J1和网易云音乐氧气真无线有什么不同_国产电商蓝牙耳机音质对比
Golang如何实现微服务鉴权与权限控制_Golang微服务鉴权与权限管理实践
Kafka Streams中基于消息头条件过滤消息的实现指南
j*a toString()的覆盖
qq游戏跨平台入口_qq游戏多设备同步登录
神庙逃亡小游戏在线玩 神庙逃亡小游戏入口
包子漫画官方网站在线链接-包子漫画在线阅读平台主页地址
c++ 命名空间怎么用 c++ namespace使用指南
顺丰国际快递查询 国际件官方查询入口
EMS快递官网app_中国邮政速递物流手机客户端
2026春节假期票务安排_2026春节放假购票指南
天眼查怎么看公司融资情况 天眼查企业融资历史查询步骤【攻略】
必由学网页版入口 必由学官方平台直接访问
PHP表单数据传递:如何通过隐藏输入字段获取动态ID
QQ邮箱电脑版登录入口_QQ邮箱官方网站登录平台
MongoDB聚合管道:正确匹配对象数组中_id的方法
C++如何打印当前代码行号与文件名_C++预定义宏FILE与LINE的使用
c++中的std::forward_list和std::list有什么不同_c++ forward_list与list区别分析
押井守高度称赞《辐射4》:玩了八年都停不下来!
C++如何操作大型数据集_使用C++流式处理(Streaming)技术避免一次性加载大文件
消息称三星明年 2 月正式发布 HBM4,与 SK 海力士同台竞技
中兴BladeV30怎样用测距估书架层高_iPhone中兴BladeV30测距估书架层高【家装参考】
Pygame教程:解决用户输入与游戏状态更新不同步问题
Win10自动更新怎么关闭 Win10永久关闭系统更新的两种方法【终极版】
Win11怎么用U盘重装系统 Win11制作启动盘并重装系统完整教程【详解】
韩剧圈正版入口页面_韩剧圈官网登录链接
Lar*el递归关系中排除子孙节点的策略
fishbowl官网免费版 fishbowl养鱼网站入口
c++如何使用折叠表达式(Fold Expressions)_c++17可变参数模板新技巧
R星幕后开发视频泄露 包含《GTA6》等多款大作
Bilibili动漫最新防封地址发布-Bilibili动漫2025年最稳正版入口推荐
Win10如何恢复误删的快捷方式_Win10重建常用软件快捷方式
Excel如何用迷你图显趋势_Excel用迷你图显趋势【趋势小图】
顺丰快件物流信息 官方网站查询入口
文心一言怎样用批量生成做多版文案_文心一言用批量生成做多版文案【批量创作】
PySpark中高效提取字符串右侧可变长度数字:使用regexp_extract
一加 Nord 5 隐私权限异常_一加 Nord 5 系统安全优化
Windows电脑怎么截图最方便_系统自带截图工具的5种神仙用法【技巧】
C#使用XPath查询节点时出错? 常见语法错误与调试技巧
58动漫网在线官方网 58动漫网正版动漫入口网址
内存疯狂猛猛涨价:主板销量直接腰斩!
将HTML Canvas内容转换为可上传的图像文件(File对象)


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