Почему при использовании буферов протокола Google возникает ошибка «Не удается импортировать имя дескриптора_pb2»?

При использовании сгенерированного кода Python из наших классов protobuf мы получаем эту ошибку:

cannot import name descriptor_pb2

Эквивалентный сгенерированный код C ++ работает просто отлично, поэтому может показаться, что с нашими фактическими определениями протоколов проблем нет.

Эта ошибка возникает, когда я пытаюсь импортировать наш класс, вот так:

import sys
sys.path.append('..\path\to\generated')
sys.path.append('..\contrib\protobuf\python')

from foobar_pb2 import FooBar

Правильно ли добавлять системные пути?

Я проверил вprotobuf\python\google\protobuf каталог дляdescriptor_pb2.py но только нашелdescriptor.py - мы используем последнюю версию, поэтому я предполагаю, что у нас нет пропавших файлов.

Кто-нибудь знает, что решение?

Ответы на вопрос(5)

Ваш ответ на вопрос