Dlaczego widzę błąd „nie można importować nazwy descriptor_pb2” podczas używania buforów protokołu Google?
Podczas korzystania z wygenerowanego kodu Pythona z naszych klas protobuf otrzymujemy ten błąd:
cannot import name descriptor_pb2
Odpowiedni wygenerowany kod C ++ działa dobrze, więc wydaje się, że nie ma problemu z naszymi aktualnymi definicjami proto.
Ten błąd występuje, gdy próbuję zaimportować naszą klasę, tak jak poniżej:
import sys
sys.path.append('..\path\to\generated')
sys.path.append('..\contrib\protobuf\python')
from foobar_pb2 import FooBar
Czy poprawne jest dołączanie ścieżek systemowych?
Sprawdziłemprotobuf\python\google\protobuf
katalog dladescriptor_pb2.py
ale tylko znalezionodescriptor.py
- używamy najnowszej wersji, więc zakładam, że nie brakuje żadnych plików.
Czy ktoś wie, jakie jest rozwiązanie?