2015-12-16 87 views
1

我最近一直在撕裂我的听到这个微不足道的问题,没有我在网上找到的帮助我到目前为止。我正在使用virtualenv,我的项目结构如下:VirtualEnv蟒蛇进口不工作

myproj\ 
..bin 
..tasks.py 
..celery_app.py 
..projapi 

其中importFolder是一个包含一堆文件的API文件夹。 proj.py是我的脚本,它所有的工作,并包含进口喜欢

sys.path.append("/abspath/to/projapi") 
import projapi 

我能源频段/激活并进入我的virtualenv就好了,但是当我回去一个目录,然后运行芹菜工作人员:

celery -A myproj worker --app=myproj.celery_app:app -l info 

我会为myproj目录中的每个文件夹(如'projapi'的importerror)导入一个导入错误。这就好像virtualenv只在/ bin目录中寻找所有文件(其中我的proj在myproj目录中)

我该如何解决这个问题?我尝试追加各种系统和Python路径,无论是在激活和在我的tasks.py,但无济于事。

+0

只是猜测:你不使用virtualenv内的芹菜。芹菜告诉你什么? – frlan

回答

0

您是否试过改变celery调用本身?

celery -A celery_app worker -E -l INFO 
1

也许你正在使用全系列芹菜。 尝试在虚拟环境中使用pip进行安装并重复执行,这将解决您的问题。

还要验证您.py所在的每个文件夹是否包含__init__.py文件。