编译protobuf并尝试在其他包中使用结构时,未定义结构的MarshalToSizedBuffer

时间:2019-07-27 00:18:30

标签: go protobuf-go

我正在使用gogo / protobuf为gRPC调用生成protobuf,但是最近由于编组方法未正确生成而使它们开始失败。错误看起来像这样:

service/v1/service.pb.go:1347:27: m.ListMeta.MarshalToSizedBuffer undefined (type *"k8s.io/apimachinery/pkg/apis/meta/v1".ListMeta has no field or method MarshalToSizedBuffer)

我尝试使用不同的gvm重新安装go和goenv,并将更改还原到原始文件。这个问题似乎已经在我们的原始文件的最后一个稳定分支上解决了,但是如果我进行任何更改,问题就会再次出现。这涉及两个存储库,一个使用golang 1.11.1(原始文件存储库),另一个使用golang 1.12.5。

我希望使用该程序包需要生成protobuf的所有方法。

1 个答案:

答案 0 :(得分:0)

我们通过将相关性修复为以前的工作版本,并将不同的Golang存储库升级为相同的主版本,从而解决了该问题。