0
2つの.protoファイルがあります。これには相互依存関係のある2つのパッケージがあります。相互依存関係のある.protoファイルを含める方法
a.proto
syntax = "proto3";
import "b.proto";
package a;
message cert {
string filename = 1;
uint32 length = 2;
}
enum state {
UP = 1;
DOWN = 2;
}
message events {
repeated b.event curevent = 1;
uint32 val = 2;
}
b.proto
syntax = "proto3";
import "a.proto";
package b;
message event {
a.cert certificate = 1;
a.state curstate = 2;
}
私はcppのファイルを生成しようとすると、次のエラーが
これを達成することができる方法# protoc -I. --cpp_out=. b.proto b.proto: File recursively imports itself: b.proto -> a.proto -> b.proto
を見ていますか?
注:使用protocバージョンでは、循環依存が含ませませんlibprotoc 3.3.0
もしも相互依存関係ならば、共有部分をc.protoに動かすと動作しますが、あなたのシナリオを見れば、すべてを1つのファイルに移動することはできません。 –