我目前管理着几个单独的 Maven 项目,在这些项目中我使用 Protobufs 作为序列化格式并通过网络传输。我正在使用 David Trott 的maven-protoc 插件在编译时生成代码。
一切都很好,直到我希望这些项目在彼此之间进行通信——或者更确切地说,使用彼此的 protobufs。protobuf 语言有一个“import”指令,它可以满足我的要求,但我面临着让项目 A 导出“.proto”文件(或可能是某种中间格式?)以供项目 B 依赖的挑战。
Maven 为项目提供了一种捆绑资源的方法,但是 AFAIK,这些是在运行时由代码使用,而不是在编译/源代码生成阶段由目标使用——至少我无法找到描述的文档我想要达到的目标。