假设我有一个包含一些 .proto
文件的文件夹:
Message.proto
Conversation.proto
对于每个 .proto file for python ,我需要这样做:
protoc --python_out=. XXXXXXX.proto
对于每个 .proto file for swift ,我需要这样做:
protoc --swift_out=. XXXXXXX.proto
是否有任何简单的方法可以将文件夹中的每个 .proto 文件自动编译为多种语言?我有很多用于两种语言的 .proto
文件,现在我需要将每个文件编译两次(对于 python 和 swift(但是如果我添加更多语言,你能想象痛苦吗?)) .
我想知道将 .proto
文件编译成多种语言的最快方法是什么。理想情况下,我想要一个包含 .proto 文件的 .swift/.py 文件的生成文件夹。
最佳答案
如果您在 shell 中运行 protoc
,那么您可以使用通配符 *.proto
,如下所示:
protoc C:\your_absolute _path\*.proto --python_out=C:\python_source\
查看此 link
如果您需要支持多种语言,那么您需要创建脚本(或自定义命令),其中包含匹配构建系统中所有 *.proto
文件的 glob 模式,然后运行命令在一个循环中。
就像cmake
构建系统中的add_custom_command
关于python - 将 .profo 文件的文件夹编译为多种语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53016507/