Ruby on rails Cron作业没有';I don’我不能和你一起工作
我想创建一个schedule cron作业。 我什么时候都用。我的rails版本是4.1.6,我在osx中 所以我创建了一个ScheduleCron作业来进行测试 附表1.rbRuby on rails Cron作业没有';I don’我不能和你一起工作,ruby-on-rails,ruby,cron,whenever,Ruby On Rails,Ruby,Cron,Whenever,我想创建一个schedule cron作业。 我什么时候都用。我的rails版本是4.1.6,我在osx中 所以我创建了一个ScheduleCron作业来进行测试 附表1.rb every 1.minutes do runner "DatabaseWatcher.run" end 补丁: /lib/DatabaseWatcher.rb 类别: class DatabaseWatcher def run puts "test" e
every 1.minutes do
runner "DatabaseWatcher.run"
end
补丁:
/lib/DatabaseWatcher.rb
类别:
class DatabaseWatcher
def run
puts "test"
end
end
在这之后,我做了:
每时每刻$
## [message] Above is your schedule file converted to cron syntax; your crontab file was not updated.
## [message] Run `whenever --help' for more options.
$w-w
[write] crontab file written
我从未在命令行中看到“test”。
我做错了什么?我以前已经犯过这个错误。 使用
.self
在run方法中添加class方法。如果/lib/DatabaseWatcher.rb
中的DatabaseWatcher没有调用,则必须移动到app/models/database_watcher.rb文件夹中
class DatabaseWatcher
def self.run
puts "test"
end
end
这是为了在环境开发中更新crontab
# to update crontab
whenever --update-crontab --set environment=development
# show crontab list
crontab -l
供参考:
它不是通过终端会话运行的,所以它没有输出。用
crontab-l
#的输出更新您的问题:/Users/diogo/MIT/config/schedule.rb*****/bin/bash-l-c'ls'#在:/Users/diogo/MIT/config/schedule.rbcrontab的生成任务没有任务时开始,因此我不会运行,你需要弄清楚为什么它不写信给你crontab@Zahid错误的粘贴。这是最后一个版本:#为:/Users/diogo/MIT/config/schedule.rb*****/bin/bash-l-c'cd/Users/diogofrazao/MIT&&bin/rails runner-e production'\''DatabaseWatcher.run'\''''.\35;为:/Users/diogo/MIT/config/schedule.rb生成任务时结束他所说的内容。尝试从rails控制台运行命令:DatabaseWatcher.run
。它将给出一个错误。这不是正确的ruby语法。您需要将其设置为类方法。