尝试服务现有Pylons应用时出现PasteScript错误
我正在尝试在OS X Snow Leopard上运行一个现有的Python 2.5 Pylons应用程序。
我已经安装了Python 2.5,并把它设置为默认的Python版本,还安装了paster,并且安装了这个应用所需的Pylons版本(0.9.6.1)以及其他一些依赖包……但是当我进入主文件夹并执行“paster serve development.ini”时,出现了以下错误:
File "/usr/local/bin/paster", line 5, in <module>
from pkg_resources import load_entry_point
File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 2603, in <module>
File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 666, in require
File "/System/Library/Frameworks/Python.framework/Versions/2.5/Extras/lib/python/pkg_resources.py", line 565, in resolve
pkg_resources.DistributionNotFound: PasteScript==1.7.3
我确实已经执行了“easy_install PasteScript==1.7.3”,但仍然出现这个错误。我是不是漏掉了什么很明显的东西?求助!
提前谢谢大家。
4 个回答
首先,打开 /usr/sbin/luci
文件,找到第一行,然后在下面的那一行加上你使用的 Python 版本。
#!/usr/bin/python -Es
接着,打开 /usr/bin/paster
文件,同样找到第一行,然后在下面的那一行加上你使用的 Python 版本。
#!/usr/bin/python
也许这个回答太简单了,但我建议你试着安装特定版本的东西,像这样:easy_install-2.5 PasteScript==1.7.3
。想了解更多细节,可以查看Easy install 的文档。
你可能在你的电脑上安装了多个Python版本。easy_install
这个命令可能把PasteScript安装到了另一个Python解释器里。你可能需要使用特定的easy_install-2.5
命令,这样才能在Python 2.5的环境下使用。
不过,强烈建议你在开发时使用virtualenv。
virtualenv可以让你创建一个独立的环境,这个环境绑定到特定的Python解释器,你可以在这个环境里根据每个项目安装特定版本的包。
关于如何在Pylons中使用virtualenv的更多信息,可以查看这里: http://wiki.pylonshq.com/display/pylonscookbook/Using+a+Virtualenv+Sandbox