rufus-scheduler 因 rake 任务失败(不知道如何构建任务)

发布于 2024-12-14 09:28:50 字数 818 浏览 0 评论 0原文

我正在使用 Rails3(Windows,Ruby 1.8.7)和 rufus-scheduler gem。 Gem 工作正常,但如果我尝试运行一些标准 rake 任务,则会出现错误:

Don't know how to build task 'db:version' # ofc, db:version is just example

终端命令

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

...但使用标准 rake 任务 *in my_own_tasks* 抛出同样的错误。

一些帮助将不胜感激

PS. 。我是新手,很抱歉,如果这是一个愚蠢的问题

I'm using Rails3 (Windows, Ruby 1.8.7) with rufus-scheduler gem. Gem works fine, but if I'm trying to run some standard rake task, error occurs:

Don't know how to build task 'db:version' # ofc, db:version is just example

Terminal command

rake -T

works

If I'm trying to define own simple rake commands, they works fine too:

# /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

... but using standard rake tasks *in my_own_tasks* throws the same error.

Some help would be appreciated

PS. I'm newbie, so sorry, if that was dumb question

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

无法回应 2024-12-21 09:28:50

也许有人需要解决方案:

system("rake namespace:task")

fe:

system("rake db:version")

Maybe someone will need solution:

system("rake namespace:task")

f.e:

system("rake db:version")
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文