码迷,mamicode.com
首页 > 其他好文 > 详细

rufus/scheduler

时间:2014-08-06 01:21:30      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:blog   io   文件   问题   ar   cti   div   amp   

之前先在initializers 文件夹下建立了一个task.rb ,rails服务启动的时候执行,本地没问题,可是服务器上启动了3个进程,会执行3遍,解决方法是 把task.rb 放到 script/文件夹下,然后在项目根目录执行 ruby script/task.rb production &。以为ok了。but又出问题了, 
我的日志输出路径是  
Logger.new("#{Rails.root_to_s}/log/test.log"),运行脚本的时候报错 uninitialized constant RAILS ,解决方法是在task.rb文件头 加上下面两行: 
  
ENV[‘RAILS_ENV‘] = ARGV.first || ENV[‘RAILS_ENV‘] || ‘development‘ 
  
require File.expand_path(File.dirname(__FILE__) + "/../config/environment") 

最下面还要加上  
scheduler.join 

 

但是我用下面的方法就可以了:

在script下新建task.rb文件,内容如下

require ‘rubygems‘
require ‘rufus/scheduler‘
scheduler = Rufus::Scheduler.new

scheduler.every("2s") do
   puts Time.now
end
scheduler.join

  这样后在工程根目录执行ruby script/task.rb &就可以执行了,可以看到输出。 用ctrl + d可以结束进程

 

 

但是我在config/initializers文件夹下新建task,总是提示require找不到文件。。。哎。。。。失败啊。。。。

rufus/scheduler,布布扣,bubuko.com

rufus/scheduler

标签:blog   io   文件   问题   ar   cti   div   amp   

原文地址:http://www.cnblogs.com/juandx/p/3893312.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!