如何通过rails中的命令行运行rake任务

co2*_*f2e 14 ruby rake ruby-on-rails

我在一个名为的文件中定义了一个rake任务 file_locker_task.rake

namespace :myspace do
   task :process => :environment do
      FileLocker.lock_files   
   end
end
Run Code Online (Sandbox Code Playgroud)

如何从命令行执行此rake任务?我试过了:

rake myspace:processrake process但两者都抛出这样的错误:

rake aborted!
Don't know how to build task 'process'
Run Code Online (Sandbox Code Playgroud)

Dog*_*her 25

  1. rake -T -A从Rails主目录运行以查看rake知道的所有任务.你的必须在rake的列表中运行它.
  2. 默认情况下,在Rails应用程序中,rake会查找文件的lib/tasks目录及其子目录.rake.检查一下.(我怀疑这是问题所在.)

  • @hawk,我不同意.Rails配置rake来搜索`lib/tasks`.应该将所有自定义Rails应用程序rake任务*放在那里,因为这是其他开发人员期望找到它们的地方.在[rake + rails]上查看[任何教程](http://jasonseifer.com/2010/04/06/rake-tutorial)(http://guides.rubyonrails.org/command_line.html#custom-rake -任务). (2认同)