1

我有 maven 项目,其中我定义了各种.proto文件,其相应的 java 文件是通过 maven 插件生成的。这个生成的文件将用于实现 [rpc - 服务器实现],但我希望它被 python 客户端使用。

因此需要 python 等价于这些 proto 文件。一种方法是手动python protobuf对这些文件运行命令.proto并生成代码,但这太手动了。我正在寻找其他选择。

任何帮助,将不胜感激。

4

2 回答 2

1

通过在 pom 文件中为 protobuf-maven-plugin ( link ) 添加执行目标作为“compile-python”来工作。

于 2018-10-22T12:12:13.397 回答
1

您可以自动化您的手动命令 b 从 Maven 运行它。看看exec-maven-plugin插件。

您需要在 pom.xml 的插件部分添加类似的内容:

<plugin>
  <artifactId>exec-maven-plugin</artifactId>
  <groupId>org.codehaus.mojo</groupId>
  <executions>
    <execution>
      <id>Stuff I want done</id>
      <phase>generate-sources</phase>
      <goals>
        <goal>exec</goal>
      </goals>
      <configuration>
        <executable>path/stuff.sh</executable>
      </configuration>
    </execution>
  </executions>
</plugin>

调整要运行的阶段和脚本。

于 2018-10-22T11:29:45.890 回答