无法在 Python 中启动 Redis 队列 (RQ) 工作线程

Jas*_*ket 6 python redis

我使用安装了 Python Redis Queue 模块 pip install rq

当我尝试使用rqor启动工作程序时rq worker,它会引发错误。

PYTHONPATH=src REDIS_HOST=localhost rq worker --with-scheduler -u redis://localhost:6379
Traceback (most recent call last):
  File "c:\users\jason.bracket\appdata\local\programs\python\python37\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\users\jason.bracket\appdata\local\programs\python\python37\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Users\jason.bracket\AppData\Local\Programs\Python\Python37\Scripts\rq.exe\__main__.py", line 4, in <module>
  File "c:\users\jason.bracket\appdata\local\programs\python\python37\lib\site-packages\rq\cli\__init__.py", line 2, in <module>
    from .cli import main
  File "c:\users\jason.bracket\appdata\local\programs\python\python37\lib\site-packages\rq\cli\cli.py", line 93, in <module>
    @pass_cli_config
  File "c:\users\jason.bracket\appdata\local\programs\python\python37\lib\site-packages\rq\cli\cli.py", line 72, in pass_cli_config
    func = option(func)
  File "c:\users\jason.bracket\appdata\local\programs\python\python37\lib\site-packages\click\decorators.py", line 247, in decorator
    _param_memo(f, OptionClass(param_decls, **option_attrs))
  File "c:\users\jason.bracket\appdata\local\programs\python\python37\lib\site-packages\click\core.py", line 2467, in __init__
    super().__init__(param_decls, type=type, multiple=multiple, **attrs)
  File "c:\users\jason.bracket\appdata\local\programs\python\python37\lib\site-packages\click\core.py", line 2108, in __init__
    ) from None
ValueError: 'default' must be a list when 'multiple' is true.
make: *** [Makefile:50: start-worker-native] Error 1
Run Code Online (Sandbox Code Playgroud)

我正在运行Python==3.7并rq==1.7.0在 Windows 10 机器上运行。我怎样才能开始工作?我需要配置什么吗?任何帮助,将不胜感激。

小智 8

问题是click包裹。你可能有这个8.0.0版本。

安装click==7.1.2,应该没问题。

  • 谢谢。另外 https://github.com/rq/rq/issues/1469 建议这应该在 rq==1.8.1 中解决 (3认同)