使用python3.7版本celery worker启动出现语法错误

celery worker启动出现语法错误,原因是python3.7版本中async是关键字,下面的语句就报错

from kombu.async.timer import to_timestamp

                  ^

SyntaxError: invalid syntax

解决方法有两种,

一:降python版本,如果是刚安装python还好说,不然重装python还是很麻烦的


二:把kombu.async模块重命名,再把引用处修改过来,如下:

async模块改名,比如改成async99

site-packages\kombu\async --》 site-packages\kombu\async99

修改下面文件中的引用名async --》 async99

site-packages\celery\utils\timer2.py

site-packages\celery\worker\components.py

site-packages\celery\worker\autoscale.py

site-packages\celery\worker\consumer.py

site-packages\celery\worker\strategy.py

site-packages\celery\concurrency\asynpool.py

可能不止上面这些文件,根据实际情况来修改就好

本人就是用第2种方法,全局检索一下kombu.async,都改过来。或者改一处,启动一下,直到成功为止。

你可能感兴趣的:(使用python3.7版本celery worker启动出现语法错误)