Protocol buffers 编译目录中的所有原型文件(包括子目录原型文件)
我已经用下面的树结构嵌套了proto(proto3)文件[Level0.proto依赖于Level1.proto,而Level1.proto又依赖于Level2.proto]: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
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.