grpc-go示例问题解决

grpc-go示例问题解决

官方文档:https://grpc.io/docs/languages/go/quickstart/ 给了一个详细的快速开始的示例,但是在测试的时候需要自己补充一些工具,才能运行起来。所以整理了一下。

grpc-go 代码在 https://github.com/grpc/grpc-go

1、protobuf安装

grpc 使用了 protobuf 工具,用来编辑 rpc 通讯接口。protobuf 可以跨平台、跨语言序列化结构化的数据,它的输入文件是 .proto 文件。编写 .proto 文件,然后使用 protoc 工具生成对应语言的真实代码,这样就方便了接口的定义。

命令:protoc --go_out=. --go_opt=paths=source_relative --go-grpc_out=. --go-grpc_opt=paths=source_relative helloworld/helloworld.proto

报错,提示没有protoc工具:

某些系统源里也没有此工具,或者系统源里提供 protobuf 工具的版本比较旧。可以直接从 github 找到对应的发行版下载。地址:https://github.com/protocolbuffers/protobuf/releases

linux环境X86_64版本可以直接下载:wget https://github.com/protocolbuffers/protobuf/releases/download/v28.2/protoc-28.2-linux-x86_64.zip

2、protobuf-go安装

继续执行,还是会报错,提示 protoc-gen-go 文件不存在。

下载地址:https://github.com/protocolbuffers/protobuf-go/releases

inux环境X86_64版本可以直接下载:wget https://github.com/protocolbuffers/protobuf-go/releases/download/v1.34.2/protoc-gen-go.v1.34.2.linux.amd64.tar.gz

3、protoc-gen-go-grpc工具安装:

继续执行,还是会报错,提示 protoc-gen-go-grpc 文件不存在。

在 grpc-go 的代码里,有 protoc-gen-go-grpc 的代码,需要编译安装一下。路径在 cmd/protoc-gen-go-grpc。

最后:

安装这三个软件后,就能正常测试了。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注