在命令行,我可以运行这样的多个任务
rake environment task1 task2 task3
如何以编程方式执行此操作?我知道我可以执行一个这样的任务
Rake::Task['task1'].invoke
解决方法
你可以调用两个任务:
require 'rake' task :task1 do |t| p t end task :task2 do |t| p t end Rake::Task["task1"].invoke Rake::Task["task2"].invoke
我更喜欢一个新的口味与先决条件:
require 'rake' task :task1 do |t| p t end task :task2 do |t| p t end desc "Common task" task :all => [ :task1,:task2 ] Rake::Task["all"].invoke
如果我误解你的问题,并且你想执行相同的任务两次:你可以重新启用任务:
require 'rake' task :task1 do |t| p t end Rake::Task["task1"].invoke Rake::Task["task1"].reenable Rake::Task["task1"].invoke