【问题标题】:Celery on Windows: subprocess.call Access is denied in Celery, runs fine in DjangoWindows 上的 Celery:subprocess.call 访问在 Ce​​lery 中被拒绝,在 Django 中运行良好
【发布时间】:2012-02-21 04:57:48
【问题描述】:

我有以下任务:

@task(track_started = True)
def run_transcode_server():
    commands = ('java', '-cp', settings.TRANSCODE_CLASSPATH, settings.TRANSCODE_JAVA_CLASS)
    subprocess.call(commands)

直接在 django shell 中调用 subprocess.call 就可以了。但是,当 celery 尝试运行该任务时,会导致此错误:WindowsError: [Error 5] Access is denied

我在同一个用户下运行所有​​东西(这是我的开发环境)。

这是什么原因造成的?为什么 celery 不能执行子进程?

【问题讨论】:

  • 你是否从同一个用户运行 Django shell 和 celeryd?

标签: python windows django windows-7 celery


【解决方案1】:

这里有类似的东西:https://stackoverflow.com/a/7130809/1049127

您是否尝试编写 Java 可执行文件的完整路径?

【讨论】:

  • 原来我忘记了,虽然shell可以和java一起工作,但是当我从pythong调用它的时候,我需要调用java.exe
猜你喜欢
  • 1970-01-01
  • 2012-07-24
  • 2018-09-08
  • 2021-10-17
  • 2015-09-19
  • 2012-07-23
  • 2011-04-29
  • 1970-01-01
相关资源
最近更新 更多