Rails,在开发中使用gem时使用

use*_*556 39 ruby-on-rails whenever

对不起快速问题来自相关的Rails新手.我正在尝试使用Whenever gem来安排一些rake任务.我不能为我的生活让它真正开始在我的开发机器上运行cron作业.

从其他stackoverflow线程来看,似乎我应该添加:

set :environment, "development"
Run Code Online (Sandbox Code Playgroud)

到我的schedule.rb文件.但那又怎样?

然后,一旦他们开始,我该如何停止cron工作?

在OSX中使用Rails 3.2.3

更新:答案是运行$ whenever -w将cron作业写入crontab文件.然后系统立即开始自动运行该crontab文件.

不幸的是,我的日志文件包含以下内容: "rake aborted! Don't know how to build task <task name>"

我想这可能是由于已知的crontab/rvm问题,但欢迎任何建议.

Ash*_*ala 67

清除现有的cron作业.

crontab -r
Run Code Online (Sandbox Code Playgroud)

用环境更新cronjob.

whenever --update-crontab --set environment='development'
Run Code Online (Sandbox Code Playgroud)

  • 我希望看到针对初学者的这些命令的确切作用的更详细的描述! (2认同)

Con*_*ner 7

您可以使用该whenever命令及其各种选项来操作您的crontab.

$ whenever --help
Usage: whenever [options]
    -i [identifier],                 Default: full path to schedule.rb file
        --update-crontab
    -w, --write-crontab [identifier] Default: full path to schedule.rb file
    -c, --clear-crontab [identifier]
    -s, --set [variables]            Example: --set 'environment=staging&path=/my/sweet/path'
    -f, --load-file [schedule file]  Default: config/schedule.rb
    -u, --user [user]                Default: current user
    -k, --cut [lines]                Cut lines from the top of the cronfile
    -v, --version
Run Code Online (Sandbox Code Playgroud)