Ruby 1.9.2中的错误处理

时间:2011-03-15 16:55:30

标签: ruby exception-handling

我有一个Ruby方法,它循环遍历循环(loop_a)并且每次循环都调用另一个函数(do_something)。我希望Ruby进入loop_a的下一个循环,即使函数do_something抛出错误也是如此。我正在使用下面的异常处理代码,但应用程序继续停止错误。有人能告诉我我做错了吗?

loop_a.each do |str1|
  do_something(str1)
  rescue Exception => e
    Logger.error 'An error occurred: #{e}"
end

1 个答案:

答案 0 :(得分:6)

您需要beginrescue和& end。您还使用单引号打开并以双引号结束。

loop_a.each do |str1|
  begin
    do_something(str1)
  rescue Exception => e
    Logger.error "An error occurred: #{e}"
  end
end

您可以在exception handling in Ruby上阅读更多内容。