如何从控制台运行rake任务?

我想从控制台调用我的耙子任务。 它可行吗? 如果是的话,该怎么做?

我在控制台上试过

require 'rake' Rake::Task['my_task'].invoke 

但它给我这个错误:

 RuntimeError: Don't know how to build task 

这就像耙子找不到任务。

任何帮助,将不胜感激。

谢谢

编辑:我正在使用rails 2.3.5

运行你的Rake任务需要两个步骤:

  1. 加载耙子
  2. 加载你的Rake任务

你错过了第二步。

通常这是在Rakefile中完成的,但是你必须在这里手动完成:

 require 'rake' MyRailsApp::Application.load_tasks # <-- MISSING LINE Rake::Task['my_task'].invoke 

(确保用你的Rails应用程序名称replaceMyRailsApp 。)

最简单的方法是从irb运行%x [ command ]。 我不确定你想达到什么目的。

 %x[rake db:migrate] 

编辑:我强烈build议使用.invoke丹尼尔在接受的答案中说。