使用pip install -U ipython
更新程序包(在我的情况下是IPython)运行任何使用入口点的Python脚本都会失败并出现此错误:
Traceback (most recent call last):
File "/home/adrian/dev/indico/env/bin/indico", line 5, in <module>
from pkg_resources import load_entry_point
...
File "/home/adrian/dev/indico/env/lib/python2.7/site-packages/pkg_resources/_vendor/packaging/requirements.py", line 94, in __init__
requirement_string[e.loc:e.loc + 8], requirement_string))
pkg_resources._vendor.packaging.requirements.InvalidRequirement: Invalid requirement, parse error at "'< 2.0'"
没有其他任何改变,我没有更新任何其他库。
答案 0 :(得分:23)
这是由setuptools==20.2.1
中由IPython(setuptools>..
)引入的问题引起的,因此pip install -U
更新了它。
在发布固定版本或从PyPI中提取损坏的版本之前,有一个简单的解决方法(但请注意,如果更新setuptools会再次中断):
pip install -U pip
pip uninstall setuptools
pip install 'setuptools<20.2'
由于pip
的旧版本在未安装pip
的情况下无效,因此需要进行setuptools
更新
有关详细信息,请参阅这些IRC日志和BitBucket问题:
答案 1 :(得分:11)
尝试将您的点数降级为8.1.1
:
pip install pip==8.1.1
这解决了我。