繁体   English   中英

安装EB CLI 3.0后出现Python DistributionNotFound错误

[英]Python DistributionNotFound Error after installing 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

我在尝试运行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>
    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

希望能帮到别人。

使用以下命令:

pip install awsebcli

它将自动升级awsebcli的所有dependecies。

使用以下命令

sudo pip install python-dateutil

升级它

Pip可能与标准的python的不同版本相关联。

您应该尝试使用安装pip

python get-pip.py

(您可以从pip网站下载get-pip.py)

否则,您可以看到哪些Python也链接了。

which python

head -1 $(which eb)

head -1 $(which pip)

您可以在eb脚本中更改为shebang行以匹配pip,它应该都可以正常工作。

你也可以使用virtualenv安装(pythons推荐的安装方式)

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

在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']))

我有完全相同的问题,对我来说,eb脚本使用了错误的python。 为了解决这个问题,我刚刚修改了eb脚本:

> 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'

重新启动终端后,一切都按预期工作。

从日志中引发的错误,它需要python-dateutil>=2.1 因此,您需要确保已安装该版本,如果没有,则安装它。 我有类似的问题,解决方案(在我的情况下)是:

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM