Please specify either:
• a "go_package" option in the .proto source file, or
• a "M" argument on the command line.
github官方文档中提到:
9. Important notes 重点: Use grpc 1.29.1, because etcd lib doesn’t support latter versions. google.golang.org/grpc v1.29.1 For protobuf compatibility, use protocol-gen@v1.3.2. 为了protobuf的兼容性,请使用1.3.2 猜测:go-zero的goctl里面使用的是1.3.2来自动生成代码的。(zrpc本质基于grpc),所以这部分比较死板。(自动生成很方便,也有代价) go get -u github.com/golang/protobuf/protoc-gen-go@v1.3.2userClient这个单词的由来
② call 层文件夹名称取自于proto中service的名称,如该sercice的名称和pb文件夹名称相等,则会在srervice后面补充client进行区分,使pb和call分隔。解决办法:
1、按照官方使用protobuf 1.3.2
注意:proto文件中不需要写 option go_package这个选项。
2、使用最新的protobuf
格式:
package user;
option go_package = “./userclient”;
- 这种用法它不会在重名后自动加 client
- 这种必须写go_package选项



