【gRpc】Protocol Buffersを使ってgolangソースを生成する際のWARNINGを解消
以下記事で行ったProtocol Buffersを使ったgolangソースの生成する際のWARNINGを解消する方法です。
環境情報
OS: Windows10 64bit
golang: v1.15.3
Protocol Buffers: v3.13.0
サンプルコードのリポジトリ
今回使用したサンプルは以下のリポジトリに配置しています。
https://github.com/i-shinya/grpc-client-server-sample
今回までのサンプルコードは以下のコミットで確認できます。
Protocol Buffersを使ってgolangソースを生成する際のWARNINGを解消
コードの生成自体は成功するのですが、WARNINGが発生しました。
2020/11/03 22:06:20 WARNING: Missing 'go_package' option in "protos/sample.proto",
please specify it with the full Go package path as
a future release of protoc-gen-go will require this be specified.
See https://developers.google.com/protocol-buffers/docs/reference/go-generated#package for more information.
記載内容的にはgo_packageオプションが無いとのことです。ですので、上記の記事で使ったファイルに記載を追加しました。
syntax = "proto3"; option go_package = "protos/adapter"; // こちらの記載を追加 package adapter; // こちらの記載を追加 service Sample { rpc GetMySample (GetMySampleMessage) returns (MySampleResponse) {} } message GetMySampleMessage { string target_Sample = 1; } message MySampleResponse { string name = 1; string kind = 2; }
出力先の階層は変わりますが、これでWARNINGが解消できます。
package名も追加しadapterとしていますが、これはgRpcによる生成メソッドは飽くまでプレゼンテーション層に配置し、adapterとして使用する想定のためです。
最終的なディレクトリ構成
前回生成したsample.pb.goは削除し、最終的なディレクトリ構成は以下のようになりました。
. |-- adapter | `-- gen_grpc | `-- sample.pb.go |-- protoc `-- protos `-- sample.proto
ディスカッション
コメント一覧
まだ、コメントがありません