Ruby Rake任务:错误处理

Ruby Rake任务:错误处理,ruby,rake,Ruby,Rake,我还在学耙子 Rake是否内置了处理任务错误的支持,如NANT的MSBuild:如果此任务失败;执行其他任务(回滚等) e、 g:在MSBuild中,它们有OnError元素 <OnError ExecuteTargets="RollBackDatabase" /> 感谢您的帮助找到了答案: 只需使用普通异常处理块 task :will_fail_task do begin raise "something's wrong here" rescue ro

我还在学耙子

Rake是否内置了处理任务错误的支持,如NANT的MSBuild:如果此任务失败;执行其他任务(回滚等)

e、 g:在MSBuild中,它们有
OnError
元素

<OnError ExecuteTargets="RollBackDatabase" />

感谢您的帮助

找到了答案:

只需使用普通异常处理块

task :will_fail_task do
  begin
    raise "something's wrong here"
  rescue
    rollback()
    raise "error executing task"
  end
end

有没有一种方法可以更一般地做到这一点?因此,我们可以有一个:failed任务,如果任何其他任务失败,它就会运行;在try块中,我将执行/调用/调用所有较小的任务。只要记住在调用任务之前重新启用(如果需要)