*出力ファイル--go_out protocを行く使用.pb.goタイムズが未定義:proto.ProtoPackageIsVersion3を

私はgrpcを達成するために行くことに言及した。何が起こったことは、このでした  https://grpc.io/docs/quickstart/go/

例をダウンロード

でフェッチされたgrpcコードは  go get google.golang.org/grpc また、例を含んでいます。彼らは例のディレクトリの下に見つけることができます:  $GOPATH/src/google.golang.org/grpc/examples

hellowordデモ後のチュートリアルステップ実行helloword.protoファイルhelloword.go.protoに従って修正再変換したファイルの後

protoc -Iのhelloworld / helloworldの/ helloworld.proto --go_out =プラグイン= grpc:HelloWorldの

そして、実行 

greeter_server / main.goを実行して行きます

エラーの場合

HelloWorld \のhelloworld.pb.go:11:25未定義:proto.ProtoPackageIsVersion3

行く-u google.golang.org/grpcインストールprotoc-GEN-行くバージョンを取得することにより、常に最新の(サポートV3)であります

パッケージを使用して使用grpcチュートリアルのデモは、protoc-GEN-行くV1.2.0バージョン(V3をサポートしていない)であります

 GET -u google.golang.org/grpc行きます

 

V1.2.0のバージョンをインストールするために切り替えるには?

あなたが特定のバージョンが必要な場合  protoc-gen-go (たとえば、あなたと一致するように  proto 、パッケージ版)を、一つの選択肢であります

GIT_TAGは= "V1.2.0 " 必要に応じて#変更 -d -u github.com/golang/protobuf/protoc-gen-go取りに行く のgit -C " $(のenv GOPATHを行く" /src/github.com/golang/いるProtobufのチェックアウト$ GIT_TAG github.com/golang/protobuf/protoc-gen-goをインストール行きます

 

参考:https://stackoverflow.com/questions/53952723/undefined-proto-protopackageisversion3

おすすめ

転載: www.cnblogs.com/zjhblogs/p/11505432.html