gogo/protobuf proto.GoGoProtoPackageIsVersion2、proto3 版本 不一致
生活随笔
收集整理的這篇文章主要介紹了
gogo/protobuf proto.GoGoProtoPackageIsVersion2、proto3 版本 不一致
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
protobuf的幾個版本
源代碼里面的版本【proto文件的語法版本】:
生成的pb文件里面的版本是3,并且下面會報錯。
原因:項目go.mod里面引用的包是1.2.1, 沒有GoGoProtoPackageIsVersion3 這個變量,所以會報找不到的錯誤。
一般現在默認下載的protoc工具都是3版本的,這個并不會導致生成代碼有版本問題,關鍵是后面的gogoslick插件版本必須低一點【兼容老項目】。【下載的時候 默認是新版本所以生成的不能用】
解決方法:下載老版本的gogoslick編譯插件 【GOHOME下面的全局包】
兩種解決方案
鏈接: https://pan.baidu.com/s/1tRuhNZMG4xRDzVgR_Rto2A 密碼: ol5b
2.【也可以直接從github上下載指定版本的protobuf,在全局的go空間,而不是項目的go module中。v1.2.1】
Go語言如何指定特定版本的包:
總結
以上是生活随笔為你收集整理的gogo/protobuf proto.GoGoProtoPackageIsVersion2、proto3 版本 不一致的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 记者求证北京将禁止外地车和外地人员从事网
- 下一篇: 【他山之石】康师傅的本地化策略