Ошибка Python DistributionNotFound после установки EB CLI 3.0

Попробовали много вещей, но продолжайте получать эту ошибку после нескольких попыток обновления python, pip и т.д. Я нахожусь в OS X 10.9.5.

CMD% eb 

Traceback (most recent call last):
  File "/usr/local/bin/eb", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 2603, in <module>
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 666, in require
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 565, in resolve
pkg_resources.DistributionNotFound: python-dateutil>=2.1,<3.0.0

Ответ 1

У меня была аналогичная ошибка при попытке запустить eb, но не для dateutil...

Traceback (most recent call last):   
  File "/usr/local/bin/eb", line 5, in <module>
    from pkg_resources import load_entry_point   
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 2603, in <module>
    working_set.require(__requires__)   
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 666, in require
    needed = self.resolve(parse_requirements(requirements))   
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 565, in resolve
    raise DistributionNotFound(req)  # XXX put more info here
pkg_resources.DistributionNotFound: requests>=2.6.1,<2.7

Для меня было решение обновить setuptools:

sudo pip install --upgrade setuptools

Надеюсь, что кто-то поможет.

Ответ 2

Используйте следующую команду:

pip install awsebcli

Он автоматически обновит все зависимости от awsebcli.

Ответ 3

используйте следующую команду

sudo pip install python-dateutil

чтобы обновить его

Ответ 4

Пип, вероятно, связан с другой версией python, а затем стандартным.

Вы должны попробовать установить пипс с помощью

python get-pip.py

(Вы можете скачать get-pip.py с сайта pip)

В противном случае вы можете увидеть, какой из Python связан также.

which python

head -1 $(which eb)

head -1 $(which pip)

Вы можете перейти на строку shebang в eb script, чтобы соответствовать пункту pip, и все должно работать.

Вы также можете установить с помощью virtualenv (рекомендуемый способ для pythons)

virtualenv ~/ebenv
source ~/ebenv/bin/activate
pip install awsebcli
deactivate
sudo ln -s ~/ebenv/bin/eb /usr/local/bin/

Ответ 5

в моем случае на mac osx 10.10 мне пришлось переустановить.

sudo pip install python-dateutil

На всякий случай некоторые запутываются в этот тип ошибок. проверьте последний абзац в трассировке на предмет ошибки, которую он вызывает. В моем случае это было:

 raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (six 1.4.1
(/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python),
Requirement.parse('six>=1.5'), set(['python-dateutil']))

Ответ 6

У меня была такая же проблема, для меня eb script использовал неправильный питон. Чтобы решить эту проблему, я просто изменил eb script:

> which eb
/usr/local/bin/eb
> sudo vim /usr/local/bin/eb
## Change the first line from '#!/usr/bin/python' to '#!/usr/local/bin/python'

После перезапуска терминала все работает должным образом.

Ответ 7

Из повышенной ошибки в вашем журнале требуется python-dateutil>=2.1. Поэтому вам нужно убедиться, что версия установлена ​​и установлена, если нет. У меня была аналогичная проблема, и решение (в моем случае):

 $ pip install --ignore-installed python-dateutil==2.2