缺少某些方法: mustEmbedUnimplementedJobServiceServer()
编辑于 2022-10-22 13:49:45 阅读 1821
默认情况下,要使用此工具生成的方法注册服务,服务实现必须嵌入相应的Unimplemented<ServiceName>Server
,以实现未来的兼容性。这是与之前包含在protoc-gen-go中包含的grpc代码生成器的行为更改。要恢复此行为,请设置require_unimplemented_servers=false
选项。例如:
protoc --go-grpc_out=require_unimplemented_servers=false[,other options...]:. \
请注意,不建议这样做,并且仅提供该选项来恢复与之前生成的代码向后兼容性。
建议的做法是,在你的实现(blogServer)文件中添加如下代码
...
type blogServer struct {
*blogv1.UnimplementedBlogServiceServer //解决"missing mustEmbedUnimplementedBlogServiceServer method"的问题
}
//func (s *blogServer) mustEmbedUnimplementedBlogServiceServer() {
// //为了解决"missing mustEmbedUnimplementedBlogServiceServer method"的问题,但我测试时不好使
//}
...
来源
https://github.com/grpc/grpc-go/blob/master/cmd/protoc-gen-go-grpc/README.md