Как исправить `AttributeError: модуль 'apache_beam.coders.coders' не имеет атрибута 'VarIntCoder'` - PullRequest
0 голосов
/ 20 мая 2019

Я работаю над созданием конвейера Apache Beam, но при попытке импортировать параметры конвейера я сталкиваюсь с AttributeError.

Я тестирую на сервере Ubuntu в чистой виртуальной среде с использованием python3.6

Шаги:

virtualenv -p python3.6 beam-env
. beam-env/bin/activate
pip install apache_beam==2.12.0
python3.6 test.py

Внутри test.py:

from apache_beam.options.pipeline_options import PipelineOptions

Я ожидаю, что импорт будет работать успешно, но я получаю следующую ошибку:

AttributeError: модуль «apache_beam.coders.coders» не имеет атрибута «VarIntCoder»

1 Ответ

0 голосов
/ 20 мая 2019

Обновление:

На самом деле ошибка связана с python3. Переключитесь на python2.7, ошибка исчезла. Beam полностью переходит на python3, который, как ожидается, скоро завершится на 100%. [Я не уверен насчет ETA на 100%, возможно, дважды проверьте в группе пользователей точную временную шкалу]

Оригинал: Следуйте также в вашем virtualenv:

pip install -e .[gcp,test]

и возможно также сделать это в папке apache_beam:

python setup.py sdist

А затем попробуйте снова.

Среда установки может быть сложной, даже если используется virtualenv. Я иногда нахожу советы на этой странице полезными: https://cwiki.apache.org/confluence/display/BEAM/Python+Tips

Надеюсь, это поможет.

...