新版protoc-gen-go不支持grpc服务生成,需要通过protoc-gen-go-grpc生成grpc服务接口,但是生成的Server端接口中会出现一个mustEmbedUnimplemented***方法

我代码中的 提示:

生成的grpc代码中:

通过查阅protoc-gen-go-grpc的文档得知,默认情况下,要使用此工具生成的方法注册服务,服务实现必须嵌入相应的未实现<ServiceName>服务器以实现未来的兼容性。这是对先前包含在protoc gen go中的grpc代码生成器的行为更改,文档提到不建议这么做,如果想要解决掉这个mustEmbedUnimplemented***,可以在生成代码的时候,加一个参数require_unimplemented_servers=false,详见protoc-gen-go-grpc文档


oh yeah