私は2つのprotobufメッセージを別々のディレクトリに置いています。一方のメッセージは他方のメッセージに入れ子になっています。基本的には、このような何か:次のようにファイルがあるPythonの別のディレクトリからprotobuf依存関係をインポートする
import "msg1.proto";
message Message2 {
optional Message1 message1 = 1;
}
は:
dir
+---dir1
| msg1.proto
|
\---dir2
| msg2.proto
自動生成されたファイルmsg2_pb.py
はラインimport msg1_pb
が含まれています。問題は、msg1_pb.py
とmsg2_pb.py
が異なるディレクトリに存在するため、インポートが失敗することです。
追加できるフラグはありますか。msg1_pb
とmsg2_pb
は、ディレクトリ構造を認識しやすいようにコンパイルされますか? msg2
をコンパイルするとき
は現在、私のコマンドラインは次のようになります。
protoc.exe --proto_path=dir1 --python_out=out msg2.proto