我有一个奇怪的问题,我成功安装芹菜,但我无法导入其模块:
>>> import celery # OK
>>> import djcelery
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Library/Python/2.7/site-packages/django_celery-2.5.5-py2.7.egg/djcelery/__init__.py", line 25, in <module>
from celery import current_app as celery # noqa
ImportError: cannot import name current_app
>>> from celery.decorators import task
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named decorators
这个错误发生在芹菜2.6.0a3(来自github)或2.5.3(来自pypi)和django-celery 2.5.5上。尝试重新安装几次,甚至尝试在Jython中,我得到了同样的错误。
我不知道它是什么,任何人都可以帮助我吗?
答案 0 :(得分:4)
你的系统python(特别是python标准的lib“os”)和你预编译的virtualenv python二进制文件之间的不匹配。
停用virtualenv,删除你的virtualenv python二进制文件,然后在同一个virtualenv文件夹上运行virtualenv脚本将为你的virtualenv重新编译python并解决问题。
答案 1 :(得分:-1)
从github克隆了项目(celery),并解析了python setup.py install
。奇怪的是,当我的机器中通过pip安装时它无法导入模块(即使/Library/Python/2.7/site-packages/celery/decorators.py任务在那里)。
希望它有所帮助。