对不起快速问题来自相关的Rails新手。我正在尝试使用Whenever gem来安排一些rake任务。我不能为我的生活让它真正开始在我的开发机器上运行cron作业。
从其他stackoverflow线程判断,似乎我应该添加:
set :environment, "development"
到我的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问题,但欢迎任何建议。
答案 0 :(得分:65)
清除现有的cron作业。
crontab -r
使用环境更新cronjob。
whenever --update-crontab --set environment='development'
答案 1 :(得分:6)
您可以使用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
答案 2 :(得分:2)
whenever -c cron-name #removing cronjobs
答案 3 :(得分:0)
在config / schedule.rb之上添加以下代码行为我工作。
- (MKOverlayView *)mapView:(MKMapView *)mapView viewForOverlay:(id)overlay {
if ([overlay isKindOfClass:[MKPolyline class]]) {
self.lineView = [[MKPolylineView alloc]initWithPolyline:(MKPolyline*)overlay] ;
self.lineView.strokeColor = [[UIColor redColor] colorWithAlphaComponent:1];
self.lineView.lineWidth = 1;
return self.lineView;
}
return nil;
}