在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.proto
syntax = "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;
}
繁星淼淼
相关分类