Kat*_* B. 6 python virtualenv setup.py pyramid
我已经安装了金字塔并成功创建了一个项目,但是当我尝试向setup.py要求添加新包时,他们总是给我一个pkg_resources.DistributionNotFound错误.
这些软件包已经安装,只有在我运行后尝试安装新软件包时才会发生这种情况../bin/python3.3 setup.py develop它是什么软件包并不重要.
我解决(不是真的)的唯一方法是在创建项目并运行setup.py develop之前设置一个新的虚拟环境并安装软件包.
显然我做错了什么.除了pip安装包之外还有什么需要做的吗?这是一种路径问题吗?我是新手,所以你的帮助会非常感激!
*添加我的安装过程,以防任何人碰巧看到它有问题. 还包括我的wsgi文件.
创造了一个virtualenv
easy_install-3.3 env
激活了virtualenv
source env/bin/activate
安装金字塔
cd env
./bin/easy_install-3.3 pyramid
创建了一个项目
./bin/pcreate -s starter myprojectname
跑setup.py
cd myprojectname
../bin/python3.3 setup.py develop
此时我收到以下错误:pkg_resources.DistributionNotFound:waitress
已安装的女服务员
../bin/easy_install-3.3 waitress
再次尝试setup.py(不确定我是否应该这样做)
../bin/python3.3 setup.py develop
仍然看到错误
我的.wsgi文件包含以下内容(不确定这对于这个问题是否重要):
activate_this = "/home/account/env/bin/activate_this.py"
execfile(activate_this,dict(__file__=activate_this))
import os
import sys
path = '/home/account/env/lib/python3.3/site-packages'
if path not in sys.path:
sys.path.append(path)
from pyramid.paster import get_app
application = get_app('/home/account/env/myprojectname/production.ini', 'main')
使用Michael的上述建议,我能够解决他的问题.我甚至不需要手动安装任何包.一切正常后,如果我在setup.py文件中添加了一个需求(在创建金字塔项目时创建)并运行了pip install -e.一切都安装得很完美.这个问题是我安装东西的原因造成的.这是我的最后一个过程,以防止任何其他新手金字塔:
创建了一个虚拟环境
virtualenv-3.3 env
激活了环境
source env/bin/activate
已移至环境目录
cd env
安装金字塔
pip install pyramid
创建了一个项目
./bin/pcreate -s starter myprojectname
移动到我的项目目录
cd megaproject
跑安装
pip install -e .
用我的env和项目设置更新了我的wsgi文件
重新加载应用程序,并高兴地看到可爱的金字塔首页
pip 且setup.py develop不应混合。后者使用 easy_install,在命名空间包的情况下与 pip 不兼容(这些包作为另一个父包的子包安装,例如 zope.sqlalchemy 仅安装完整 zope.* 包的 .sqlalchemy 部分)。命名空间包会导致 pip 和 easy_install 之间出现问题。另一方面,大多数其他软件包都可以与您选择的任何系统一起正常工作,但最好保持一致。
另一件需要仔细检查的事情是您实际上正在将软件包安装到您的 virtualenv 中。您应该能够在 virtualenv 中打开 python cli 并导入包。如果不能,则可能没有安装。
| 归档时间: |
|
| 查看次数: |
2222 次 |
| 最近记录: |