使用外部ruby库时的常见错误处理方法

时间:2012-08-29 12:58:54

标签: ruby exception error-handling

我正在创建一个ruby-library(但实际上我是一个java开发人员),任何人都可以使用它如果库出现问题你更喜欢什么样的场景,我会引发异常或者我只是返回错误代码。

在java中,这是一个非常简单的例外,你可以定义一个“throws” - 声明,这样lib的用户就必须捕获异常。

红宝石最好的方法是什么?

问候&& TIA   noircc

1 个答案:

答案 0 :(得分:4)

在ruby中,您raise例外。异常可以是类,类的实例,类和字符串,通常类是StandardError的后代,它是Exception的后代。要捕获异常,请执行以下操作:

begin
   raise StandardError, "weeee, exception!"
rescue StandardError => e # or => e for a general rescue
   puts "Exception Message: #{e.message}"
end

通常,异常处理将在库外完成,因此您只需担心raise行。 rubied中仍然存在throwcatch,但raise是首选的异常处理方法。