在Python中使用protoc生成正确的导入
我正在我的在Python中使用protoc生成正确的导入,python,protocol-buffers,proto,Python,Protocol Buffers,Proto,我正在我的python项目中使用proto3。一切正常,但当我从proto文件生成类时,导入是不正确的 我有这样的目录结构 project/endpoints/protos -> image.proto 我想要输出文件 project/endpoints/grpc->从proto文件生成的类 我使用这个命令从proto文件生成类 python -m grpc.tools.protoc \ --include_imports \ --include_source_info
python
项目中使用proto3
。一切正常,但当我从proto
文件生成类时,导入是不正确的
我有这样的目录结构
project/endpoints/protos -> image.proto
我想要输出文件
project/endpoints/grpc->从proto文件生成的类
我使用这个命令从proto
文件生成类
python -m grpc.tools.protoc \
--include_imports \
--include_source_info \
--proto_path=project/endpoints/protos \
--python_out=project/endpoints/grpc \
--grpc_python_out=project/endpoints/grpc \
image.proto
我还尝试了python3….
但结果相同
它在项目/endpoints/grpc
中生成文件,但问题是导入不正确。当我看到它的样子
import image_pb2 as image__pb2
但它应该是这样的
import project.endpoints.grpc.image_pb2 as image__pb2
你能告诉我如何生成这样的导入吗 经过大量研究
我找到了
薄荷溶液:
sudo apt-get install 2to3
运行以调整导入:
2to3 path/of/generated -w -n
所以
将改为
from . import image_pb2
from . import image_pb2