windows安装protoc、protoc-gen-go、protoc-gen-go-grpc

2023-12-09 16:06
文章标签 go 安装 windows grpc gen protoc

本文主要是介绍windows安装protoc、protoc-gen-go、protoc-gen-go-grpc,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 一、 protoc
  • 二、protoc-gen-go
  • 三、protoc-gen-go-grpc

一、 protoc

1,下载:https://github.com/google/protobuf/releases

下载对应的protoc,注意选择windows

2,下好之后解压就行,然后把bin目录加入到环境变量即可

二、protoc-gen-go

网上很多资料说

go get -u github.com/golang/protobuf/protoc-gen-go@latest

但目前该模块已被弃用,继续使用该命令将出现错误,提示该库已经被弃用,让我们使用go get -u google.golang.org/protobuf/
在这里插入图片描述
当我们按新的方式go get -u google.golang.org/protobuf/后,编写好proto文件,然后执行protoc命令,又会出现如下错误
在这里插入图片描述

因此我们需要安装protoc-gen-go.exe可执行文件,当protoc命令执行时,当编译器调用时传递了 --go_out命令行标志时, protoc就会使用它。

  1. 下载:
git clone https://github.com/protocolbuffers/protobuf-go
  1. GoLand打开,到达.\cmd\protoc-gen-go\目录,执行go install .,如下
    在这里插入图片描述
  2. 此时,我们就可以在gopath路径下发现,产生了一个protoc-gen-go.exe文件,(ps:gopath路径可以通过go env命令查看)
    在这里插入图片描述
  3. 这时候再执行protoc命令,就能正常生成pb.go文件了
    在这里插入图片描述
    注意:test包是自动帮我们生成的,因为我们使用option go_package = "/test";指定生成的go代码的包名
    在这里插入图片描述

三、protoc-gen-go-grpc

protoc-gen-go-grpc 与 protoc-gen-go的安装步骤几乎一模一样,就是GitHub库不一样而已,因此就简要描述一下啦

git clone -b v1.30.0 https://github.com/grpc/grpc-go  #克隆项目
cd cmd/protoc-gen-go-grpc   #用GoLand打开后,进入到指定目录
go install .

在这里插入图片描述

这篇关于windows安装protoc、protoc-gen-go、protoc-gen-go-grpc的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/474290

相关文章

Windows下C++使用SQLitede的操作过程

《Windows下C++使用SQLitede的操作过程》本文介绍了Windows下C++使用SQLite的安装配置、CppSQLite库封装优势、核心功能(如数据库连接、事务管理)、跨平台支持及性能优... 目录Windows下C++使用SQLite1、安装2、代码示例CppSQLite:C++轻松操作SQ

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

基于Python实现一个Windows Tree命令工具

《基于Python实现一个WindowsTree命令工具》今天想要在Windows平台的CMD命令终端窗口中使用像Linux下的tree命令,打印一下目录结构层级树,然而还真有tree命令,但是发现... 目录引言实现代码使用说明可用选项示例用法功能特点添加到环境变量方法一:创建批处理文件并添加到PATH1

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

Windows的CMD窗口如何查看并杀死nginx进程

《Windows的CMD窗口如何查看并杀死nginx进程》:本文主要介绍Windows的CMD窗口如何查看并杀死nginx进程问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows的CMD窗口查看并杀死nginx进程开启nginx查看nginx进程停止nginx服务

Java SWT库详解与安装指南(最新推荐)

《JavaSWT库详解与安装指南(最新推荐)》:本文主要介绍JavaSWT库详解与安装指南,在本章中,我们介绍了如何下载、安装SWTJAR包,并详述了在Eclipse以及命令行环境中配置Java... 目录1. Java SWT类库概述2. SWT与AWT和Swing的区别2.1 历史背景与设计理念2.1.

Go学习记录之runtime包深入解析

《Go学习记录之runtime包深入解析》Go语言runtime包管理运行时环境,涵盖goroutine调度、内存分配、垃圾回收、类型信息等核心功能,:本文主要介绍Go学习记录之runtime包的... 目录前言:一、runtime包内容学习1、作用:① Goroutine和并发控制:② 垃圾回收:③ 栈和

Go语言中泄漏缓冲区的问题解决

《Go语言中泄漏缓冲区的问题解决》缓冲区是一种常见的数据结构,常被用于在不同的并发单元之间传递数据,然而,若缓冲区使用不当,就可能引发泄漏缓冲区问题,本文就来介绍一下问题的解决,感兴趣的可以了解一下... 目录引言泄漏缓冲区的基本概念代码示例:泄漏缓冲区的产生项目场景:Web 服务器中的请求缓冲场景描述代码

Go语言如何判断两张图片的相似度

《Go语言如何判断两张图片的相似度》这篇文章主要为大家详细介绍了Go语言如何中实现判断两张图片的相似度的两种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 在介绍技术细节前,我们先来看看图片对比在哪些场景下可以用得到:图片去重:自动删除重复图片,为存储空间"瘦身"。想象你是一个

Go语言中Recover机制的使用

《Go语言中Recover机制的使用》Go语言的recover机制通过defer函数捕获panic,实现异常恢复与程序稳定性,具有一定的参考价值,感兴趣的可以了解一下... 目录引言Recover 的基本概念基本代码示例简单的 Recover 示例嵌套函数中的 Recover项目场景中的应用Web 服务器中