【发布时间】:2022-10-15 00:54:58
【问题描述】:
我在名为github.com/myuser/myrepo/protos/iam/v1/service.proto 的文件中声明了一个 GRPC 服务和相关请求。此文件的标头如下所示:
syntax = "proto3";
package myrepo.iam.v1;
option go_package = "github.com/myuser/myrepo-go/iam/v1"; // golang
现在,当我尝试使用 myrepo 目录中的以下 protoc 命令编译它时:
find ./protos -type f -name "*.proto" -exec protoc --go_out=./gopb --go-grpc_out=./gopb --go_opt=module=github.com/myuser/myrepo-go {} \;
此命令有效并生成两个文件:
gopb /
- iam /
- v1 /
- service.pb.go
- github.com /
- myuser /
- myrepo-go /
- iam /
- v1 /
- service_grpc.pb.go
在这些文件中,service.pb.go 的位置正确,但我不确定为什么 service_grpc.pb.go 位于它所在的位置。如何确保两个文件都写入gopb/iam/v1/?
【问题讨论】:
标签: grpc protoc protobuf-go