Grpc Proto To Nuget Package 是一个 VS 插件(支持 VS2019+),目的是将基于 gRPC 的接口定义 .proto 文件一键转成 Nuget Package,然后发布到私有仓库上。

  1. 下载最新 GrpcProtoToNugetPackageTemplate.zip ASP.NET 的项目模板,关于ASP.NET 的项目模板介绍可 查看文章

  2. 解压 GrpcProtoToNugetPackageTemplate.zip,进入目录执行 dotnet new -i Grpc.Proto.To.Nuget.Package.1.0.0.nupkg 进行模板安装 (以下为可选操作,但建议修改)

    对模板内的 Content/.template.config/template.jsonGrpcProtoToNugetPackage.csprojGrpc.Proto.To.Nuget.Package.nuspec 进行修改调整,如:AuthorsCompanyRepositoryUrl参数的配置

    修改后需要执行 nuget pack Grpc.Proto.To.Nuget.Package.nuspec(将 nuget.exe 添加到环境变量) 重新生成 Grpc.Proto.To.Nuget.Package.1.0.0.nupkg

    最后重新安装此项目模板

  3. 安装成功后,可通过 dotnew new -u 进行查看现有的项目模板,如下:Grpc.Proto.To.Nuget.Package 即刚刚安装的项目模板,如果需要卸载,执行 dotnew new -u Grpc.Proto.To.Nuget.Package

  4. 下载最新版 GrpcProtoToNugetPackage.vsix,在关闭所有 VS 窗口下,安装此插件

  5. 安装成功后,VS 打开含 .proto 文件的项目(注意:.proto 文件必须放在 protos 文件夹下)

  6. 在 protos 文件夹右键选择 Grpc Proto To Nuget Package,如下:

  1. 击后会弹出配置窗口,设置 Nuget Package 要推送到的 源地址 和 APIKey(只需首次设置),测试可在 https://www.nuget.org 官网注册账号,并创建 API Key,实际私有项目需配置自己搭建的仓库 源地址 和 APIKey

  2. 输入 Nuget Package 版本号(目前需要手动输入)

    执行过程中使用的资源文件会暂存到 C:\TempGrpcNuget 目录下。首次会创建 repository.json 保存 Nuget 仓库的配置信息,接下来每次会根据包名创建一个临时项目用于生成对应 Nuget Package,如果有问题,一般是因不符合规范导致编译不通过,这时候可在临时项目中通过 dotnet build 进行编译查看具体问题

  3. 执行,注意输出日志,确保推送到远端仓库 OK

吴小龙同学


▲长按图片识别二维码关注

吴小龙同学:一个非常爱折腾的一线码农,目前在国内 TOP 3 手机厂商上班,8 年互联网经验,看他常年乐于分享,涉及很广,在技术、程序员职业发展等方面都有很多干货文章输出,墙裂推荐你关注一下!

Grpc Proto To Nuget Package 插件使用说明相关推荐

  1. NuGet Package Explorer

    现代Visual Studio下的开发,大家一定用过,或者听说过nuget,不知道的可以去面壁了.代码写多了,经验越来越丰富,但人越来越懒,是啊,谁愿意重复造轮子?谁又愿意陷入版本管理的地狱?所以有了 ...

  2. vscode Nuget Package Manager 提示 Versioning information could not be retrieved from the NuGet package

    错误提示 使用vscode安装nuget插件之后出现错误: "Versioning information could not be retrieved from the NuGet pac ...

  3. vs 2017 无法安装任何 nuget package,提示“库没有注册。。。”

    vs 2017 无法安装任何 nuget package,提示"库没有注册(异常来自 HRESULT: 0x8002801D (TYPE_E_LIBNOTREGISTERED))" ...

  4. This project references NuGet package(s) that are missing on this computer

    错误信息为: This project references NuGet package(s) that are missing on this computer. Enable NuGet Pack ...

  5. Assets file ‘E:\*\*\*\obj\project.assets.json‘ not found.Run a NuGet package restore to generate

    Severity Code Description Project File Line Suppression State Error NETSDK1004 Assets file 'E:\DemoT ...

  6. 使用 Swift Package 插件生成代码

    前言 不久前,我正在工作中开发一项新服务,该服务由 Swift Package 组成,该 Package 公开了一个类似于Decodable协议,供我们应用程序的其余部分使用.事实上,该协议是从Dec ...

  7. uniapp 图片上传插件使用说明

    插件地址:https://ext.dcloud.net.cn/plugin?id=4589 使用说明 本插件是一个云端上传插件,能够将本地的文件包括图片上传到云存储,ImageX是火山引擎推出的专业图 ...

  8. NuGet Package Explore 安装教程

    一.What is NuGet Package Explorer? NuGet Package Explorer(NPE)是一个应用程序,它使创建和浏览NuGet软件包变得非常容易.可以从磁盘或直接从 ...

  9. mac golang grpc proto pb文件生成go文件.md

    文章目录 1.简介 2.操作步骤 1. 安装基础的protoc工具 1. 下载 2. 添加protoc到PATH 3. 安装golang的支持 4. 使用 1. 普通编译 2. import的路径 参 ...

最新文章

  1. 2021年去中心化金融平台22亿美元加密货币被盗
  2. linux用cat查看本机ip,linux sh 如何根据出口网关来获取本机出口ip
  3. 10套华丽的 Windows 8 Metro 风格图标【2000+免费图标】
  4. hdu 2830(矩形dp)
  5. mysql执行查询出来的数据_F#连接到在线MySQL数据库执行查询
  6. php中的echo单引号_PHP的数据类型
  7. 计算机仿真技术-基于matlab的电子信息类课程课后答案,计算机仿真技术:基于MATLAB的电子信息类课程(第4版)...
  8. 什么是跨域(定义理解错误)
  9. php input框圆角样式,CSS如何实现边框圆角
  10. Java 编解码问题
  11. 数字金融反欺诈技术名词表
  12. Interactive cloth
  13. PMP第六版 十大知识领域五大过程组
  14. Shader+UGUI仿制Unity拾色器
  15. html给按钮加颜色代码,HTML按钮上的默认颜色代码
  16. 《java程序设计基础》 抽象类
  17. 邓应海:3.24最新黄金走势分析,黄金多空操作建议
  18. 小偷电竞酒店换显卡被抓!网吧/电竞酒店如何防盗?
  19. app测试——打印日志
  20. 数据库连接池的管理思想

热门文章

  1. Kinect开发笔记之二Kinect for Windows 2.0新特性
  2. gmail收件箱标签设置_通过在Gmail中启用实验室功能来启动收件箱
  3. apple tv设置_如何设置Apple TV播放个人iTunes库
  4. 你和阿里资深架构师之间,差的不仅仅是年龄(进阶必看)
  5. POJ 2135 最小费用最大流
  6. java jar包收集
  7. Centos-启动network报错RTNETLINK answers: File exists解决方法
  8. BeetleX服务网关流量控制
  9. .NET 搭建简单的通知服务
  10. WinDBg定位asp.net mvc项目异常崩溃源码位置