首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >grpc:从maven将proto文件编译为python时,缺少grpc.py文件。

grpc:从maven将proto文件编译为python时,缺少grpc.py文件。
EN

Stack Overflow用户
提问于 2019-08-29 20:24:15
回答 2查看 574关注 0票数 0

当我从python (运行python -m grpc_tools.protoc)生成grpc文件时,我会为每个X proto文件( X_pb2.pyX_pb2_grpc.py )获得2个文件。

但是,通过使用protobuf plugin (0.6.1)中的compile-python maven目标,我只能得到X_pb2.py文件,而不是grpc文件。我遇到的问题是pb2.py文件中缺少服务。那么,如何构建grpc.py文件呢?

从pip列表中

代码语言:javascript
运行
复制
grpcio          1.23.0 
grpcio-tools    1.23.0 
protobuf        3.9.1  
代码语言:javascript
运行
复制
$ python --version
Python 3.7.3
$ pip --version
pip 19.2.3 from /blahblahblah/lib/python3.7/site-packages/pip (python 3.7)
EN

回答 2

Stack Overflow用户

发布于 2019-09-04 18:00:17

看起来xolstice Maven插件不支持这一点。gRPC代码生成需要protoc编译器的插件。这个插件是在PyPI上的PyPI包中烘焙的。您必须编译Python、gRPC、protoc插件和提供给protobuf-maven-plugin才能使其工作。protocPlugin参数看起来应该做您想做的事情。

但是在更高的层次上,您为什么要使用Maven来构建Python工件呢?

票数 1
EN

Stack Overflow用户

发布于 2020-06-04 08:09:19

在编译过程中,我成功地将编译命令放入脚本中,并使用exec-maven-plugin执行脚本。

我使用一个shell脚本从gRPC快速启动运行编译命令的变体。请注意,无论您将脚本放在何处,它都将从项目根运行,除非您导航到脚本中的另一个文件夹。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57717311

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档