Protocol buffers 编译目录中的所有原型文件(包括子目录原型文件)

Protocol buffers 编译目录中的所有原型文件(包括子目录原型文件),protocol-buffers,proto,protoc,proto3,Protocol Buffers,Proto,Protoc,Proto3,我已经用下面的树结构嵌套了proto(proto3)文件[Level0.proto依赖于Level1.proto,而Level1.proto又依赖于Level2.proto]: Level0.proto syntax = "proto3"; package protobufs; import "level1/Level1.proto"; message Level0Message { Level1Message level1message = 1

我已经用下面的树结构嵌套了proto(proto3)文件[Level0.proto依赖于Level1.proto,而Level1.proto又依赖于Level2.proto]:

Level0.proto

syntax = "proto3";

package protobufs;
import "level1/Level1.proto";

message Level0Message {
  Level1Message level1message = 1;
}
syntax = "proto3";

package protobufs.folderA;
import "level2/Level2.proto";

message Level1Message {
    Level2Message level2Message = 1;
}
syntax = "proto3";

package protobufs.folderA.folderB;

message Level2Message {
  string innerMost = 1;
}
Level1.proto

syntax = "proto3";

package protobufs;
import "level1/Level1.proto";

message Level0Message {
  Level1Message level1message = 1;
}
syntax = "proto3";

package protobufs.folderA;
import "level2/Level2.proto";

message Level1Message {
    Level2Message level2Message = 1;
}
syntax = "proto3";

package protobufs.folderA.folderB;

message Level2Message {
  string innerMost = 1;
}
Level2.proto

syntax = "proto3";

package protobufs;
import "level1/Level1.proto";

message Level0Message {
  Level1Message level1message = 1;
}
syntax = "proto3";

package protobufs.folderA;
import "level2/Level2.proto";

message Level1Message {
    Level2Message level2Message = 1;
}
syntax = "proto3";

package protobufs.folderA.folderB;

message Level2Message {
  string innerMost = 1;
}
编译失败:

$ protoc -I=./ --python_out=. *.proto
level2/Level2.proto: File not found.
level1/Level1.proto:4:1: Import "level2/Level2.proto" was not found or had errors.
level1/Level1.proto:7:5: "Level2Message" is not defined.
Level0.proto:4:1: Import "level1/Level1.proto" was not found or had errors.
Level0.proto:7:3: "Level1Message" is not defined.