亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

未定義:編譯 grpc 時的 grpc.ClientConnInterface

未定義:編譯 grpc 時的 grpc.ClientConnInterface

Go
ITMISS 2022-07-11 16:59:10
我是grpc的新手。在我的go.mod文件中,我有:google.golang.org/genproto v0.0.0-20190508193815-b515fa19cec8google.golang.org/grpc v1.21.1github.com/gogo/protobuf v1.2.2-0.20190723190241-65acae22fc9dgithub.com/golang/protobuf v1.3.2我正在像這樣生成我的protobuf:go get google.golang.org/protobuf/cmd/protoc-gen-gogo get google.golang.org/grpc/cmd/protoc-gen-go-grpcprotoc --go_out=. --go-grpc_out=. ./me.proto嘗試運行測試和構建時出現以下錯誤:me_grpc.pb.go:15:11: undefined: grpc.SupportPackageIsVersion7me_grpc.pb.go:25:5: undefined: grpc.ClientConnInterfaceme_grpc.pb.go:28:30: undefined: grpc.ClientConnInterfaceme_grpc.pb.go:65:34: undefined: grpc.ServiceRegistrar我發現切換SupportPackageIsVersion7到SupportPackageIsVersion5讓 gopls 很高興,但我不知道我需要做什么才能讓其他錯誤消失。不幸的是,如果我嘗試升級這些庫,由于我的 repo 中的其他內容無法編譯,我被困在我的 go.mod 文件中的庫版本上。
查看完整描述

2 回答

?
炎炎設計

TA貢獻1808條經驗 獲得超4個贊

replace (

   github.com/coreos/etcd => github.com/ozonru/etcd v3.3.20-grpc1.27-origmodule+incompatible

   google.golang.org/grpc => google.golang.org/grpc v1.27.0

)

在 go.mod 中應該有幫助


查看完整回答
反對 回復 2022-07-11
?
慕森卡

TA貢獻1806條經驗 獲得超8個贊

很高興您啟動了 GRPC。

看來你老protoc-gen-go了,需要更新了,

要更新它,你應該

  • 首先,刪除當前的,找到它存儲的位置,你可以使用echo $PATH 命令找出這個文件在哪里。然后刪除它。

  • 第二,安裝新的,安裝它你可以運行這個命令。

    go install google.golang.org/grpc/cmd/protoc-gen-go-grpc

    注意如果您在獲取它時遇到任何問題,請改用此命令,

    go get -u github.com/golang/protobuf/protoc-gen-go

更新后,您必須編輯您的go.mod文件。

改變這一行:

google.golang.org/grpc v1.21.1

google.golang.org/grpc v1.33.2

此版本(1.33.2)支持SupportPackageIsVersion7,您的問題將得到解決。

注: SupportPackageIsVersion7版本后支持1.32.0。他們支持舊版本go version >= 1.12


查看完整回答
反對 回復 2022-07-11
  • 2 回答
  • 0 關注
  • 134 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號