考虑以下带有 Go 模块github.com/kurtpeek/proto-example和以下目录结构的示例项目(.proto目录中的proto文件和生成的 Go 代码gen/go):
.
├── gen
│ └── go
│ ├── author
│ │ └── author.pb.go
│ └── book
│ └── book.pb.go
├── go.mod
├── go.sum
├── main.go
└── proto
├── author
│ └── author.proto
└── book
└── book.proto
这里author.proto读
syntax="proto3";
package author;
message Author {
string name = 1;
}
并像这样book.proto导入:author.proto
syntax="proto3";
package book;
import "author/author.proto";
message Book {
string title = 1;
author.Author author = 2;
}
我.pb.go通过在proto/目录中运行生成文件
protoc book/book.proto --go_out=../gen/go
和
protoc author/author.proto --go_out=../gen/go
MMMHUHU
相关分类