获取DistributionNotFound错误,但包存在

Hat*_*Hat 8 python django pyjade

我正在为Django模板运行pyjade,因为我发现它更容易写入,但我试图将其转换为内置转换器的html.当我跑步时,pyjade -c django input.jade output.html我得到了错误pkg_resources.DistributionNotFound: six.但是,包six确实存在,我可以在python上导入它,当我运行pip install six --upgrade它时它说它已经是最新的了.

这是完整的追溯:

Traceback (most recent call last):
  File "/usr/local/bin/pyjade", line 5, in <module>
    from pkg_resources import load_entry_point
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 2707, in <module>
    working_set.require(__requires__)
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 686, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib/python2.7/dist-packages/pkg_resources.py", line 584, in resolve
    raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: six
Run Code Online (Sandbox Code Playgroud)

会导致此错误的原因是什么?

ljs*_*dev 8

通过easy_setup(vs pip)重新安装,在OS X Mavericks上为我解决了这个问题:

sudo easy_install six

希望对你有所帮助!

  • 很高兴它似乎也适合你.[这篇文章](http://stackoverflow.com/questions/3220404/why-use-pip-over-easy-install)可能会提供一些关于它失败原因的提示(`easy_install`安装二进制文件而不是尝试构建?).仍然没有完全解释为什么pip表示一切都是桃子,当它不是...... (3认同)