无法正常导入Celery:运行Celery演示时出现导入错误求助
排查Celery导入错误的常见方案
嘿,我来帮你搞定这个Celery导入报错的问题!从你给出的错误片段来看,问题卡在了from t3.celery import app这一行,搞不好是下面几个常见原因之一,你可以逐一排查:
1. 模块命名冲突(最常见!)
如果你自己的项目文件里有个叫celery.py的文件,那Python会优先导入你这个文件,而不是Celery官方的库,直接就导致了导入混乱。
- 解决办法:把你的
celery.py重命名成别的(比如celery_app.py),然后在t3tasks.py里更新导入语句为:from t3.celery_app import app
2. Python路径未配置正确
你的项目根目录可能没被加入Python的搜索路径,导致Python找不到t3这个包。
- 解决办法:在
run_tasks.py的最开头添加这几行代码,手动把项目根目录加入搜索路径:import sys import os # 把当前脚本所在的目录(项目根目录)加入sys.path sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
3. Celery依赖未正确安装
你用的是Anaconda2的Python2.7环境,要注意Celery的版本兼容性:Python2.7只支持Celery 4.x及以下版本,高版本已经不再支持Python2了。
- 解决办法:先激活你的Anaconda环境,然后运行:
这个版本是对Python2.7友好的稳定版本。pip install celery==4.4.7
4. 包结构不规范
Python2.7要求包目录下必须有__init__.py文件才能被识别为包,检查你的t3目录下有没有这个文件,如果没有的话,创建一个空的__init__.py文件就行。
另外,如果你能把完整的错误信息贴出来(比如File "t3/celery.py", line 3, in <后面的具体错误内容),我能更精准地帮你定位问题哦!
内容的提问来源于stack exchange,提问作者Anee
相关产品推荐
相关产品推荐

