Rails,在开发时使用
对不起,从相对Rails新手这里快速的问题。 我正在尝试使用每当 gem安排一些rake任务。 我不能为我的生活得到它实际上开始在我的开发机器上运行cron作业。
从其他stackoverflow线程来看,它似乎我应该添加这个:
set :environment, "development"
到我的schedule.rb文件。 但是呢?
那么一旦他们开始,我该如何阻止cron的工作呢?
在OSX中使用Rails 3.2.3
更新:答案是$ whenever -w
运行$ whenever -w
,将cron作业写入crontab文件。 系统立即开始自动运行该crontab文件。
不幸的是,我的日志文件包含以下内容: "rake aborted! Don't know how to build task <task name>"
我想这可能是由于已知的crontab / rvm问题,但任何build议,欢迎。
清除现有的cron作业。
crontab -r
用环境更新cronjob。
whenever --update-crontab --set environment='development'
你可以使用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
whenever -c cron-name #removing cronjobs
在config / schedule.rb的顶部添加以下代码行。
ENV['RAILS_ENV'] = "development"