今天做一个go环境下的gRPC测试,结果卡go rpc文件生成这里,我在proto文件所在目录,建了一个build.bat执行程序,代码如下
protoc --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative ./hello_grpc.proto
执行报错 'protoc-gen-go' 不是内部或外部命令,也不是可运行的程序,然后就去查资料,大部分资料都没解决问题,无非是设置环境变量,编译源码等,最后解决方法如下
第一步
检查gopath目录(%GOPATH%\)的bin文件夹,是否有protoc-gen-go.exe,protoc-gen-go-grpc.exe,2个exe文件,一般执行了安装命令 go install github.com/golang/protobuf/protoc-gen-go,就会有这2个文件

第二步
将刚才找到的2个exe文件,复制到goroot(%GOROOT%\)的bin目录下

第三部
重新执行build.exe

我们查看下proto文件所在目录,已经产生文件了

hello_grpc.pb.go文件代码如下
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.28.0
// protoc v3.19.4
// source: hello_grpc.proto
package golang
import (
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
reflect "reflect"
sync "sync"
)
const (
// Verify that this generated code is sufficiently up

本文介绍了一次gRPC环境下的测试经历,重点解决了在生成go语言的gRPC文件时遇到的问题,并分享了解决方案。文章还展示了生成的hello_grpc.pb.go文件的部分代码。
最低0.47元/天 解锁文章
6725

被折叠的 条评论
为什么被折叠?



