我使用的是带有rufus调度器gem的Rails3 (Windows,Ruby1.8.7)。Gem运行得很好,但是如果我试图运行一些标准的rake任务,就会出现错误:
Don't know how to build task 'db:version' # ofc, db:version is just exampleTerminal命令
rake -T作品
如果我尝试定义自己的简单rake命令,它们也可以很好地工作:
# /lib/my_scheduler.rb
require 'rubygems'
require 'rake'
require 'rufus/scheduler'
load File.join( Rails.root, 'lib', 'tasks', 'my_own_tasks.rake')
scheduler = Rufus::Scheduler.start_new
scheduler.every '5s' do
Rake::Task["my_own_namespace:test"].invoke
end
end
# /lib/tasks/my_own_tasks.rb
namespace :my_own_namespace do
task :test do
puts "Some scheduler task"
end
end..。但是在my_own_tasks*中使用标准的rake任务*会抛出同样的错误。
如果能帮上忙,我们将不胜感激
PS。我是新手,很抱歉,如果这是个愚蠢的问题
发布于 2011-11-14 20:59:46
也许有人需要解决方案:
system("rake namespace:task")f.e:
system("rake db:version")https://stackoverflow.com/questions/8049361
复制相似问题