为了账号安全,请及时绑定邮箱和手机立即绑定

原始 --go-grpc_out生成代码,go_out生成的代码

原始 --go-grpc_out生成代码,go_out生成的代码

Go
茅侃侃 2022-09-19 10:15:54
在previos产品中,我使用旧的原型生成-go,它允许使用插件并在同一个pb文件中生成序列化/反序列化和gRPC客户端/服务器据我所知,protoc-gen-go v1.27.1将不允许插件和需求使用客户端\服务器代码的go-grpc_out标志按照此命令操作protoc -I /usr/local/include -I $PWD/api/dummy-proto  --go_out=generated --go-grpc_out=generated --go_opt=paths=source_relative proto/v1/foo.proto我得到了generated|_proto  |_v1  |_dummy  | |_foo_grpc.pb.go //package dummy  |_foo.pb.go //package dummy由于创建了“虚拟”文件夹foo_grpc.pb.go 函数看不到在 foo.pb.go 中生成的请求和响应我做错了什么?是否可以像以前一样生成一个文件?在移动foo_grpc后,它将正常工作,与 foo.pb.go 处于同一水平。也可以使用旧的标志像和声明包与M没有斜杠和没有go_options在原型喜欢--go_out=import_path="-go_out=import_path=grpc_v1_proto,M$PWD/proto/v1/foo.proto=grpc_v1_proto"foo.protosyntax = "proto3";package dummy.v1.foo;option go_package = "proto/v1/dummy";import "proto/v1/structures.proto";service FooService {  rpc reverse(ReverseRequest) returns (ReverseResponse);  rpc getBar(GetBarRequest) returns (GetBarResponse);}message ReverseRequest {  string text = 1;}message ReverseResponse {  string reversed_text = 1;}message GetBarRequest {}message GetBarResponse {  structures.Bar bar = 1;}
查看完整描述

1 回答

?
繁星淼淼

TA贡献1775条经验 获得超11个赞

根据注释,您需要添加 .这在基础教程中有所介绍(但这实际上只是给出了命令,没有太多细节)。--go-grpc_opt=paths=source_relative

原始生成代码 grpc 使用原始生成共享的代码来处理这些选项中的大多数,因此 Go 生成代码的文档可能会回答您的问题(只需更改为 )。go_optgo-grpc_opt


查看完整回答
反对 回复 2022-09-19
  • 1 回答
  • 0 关注
  • 89 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信