在 Ruby 中怎么打印输出异常信息的详细消息?

现在有一个测试代码:


def study_ruby_exception arg_1
begin
puts 10/arg_1
rescue Exception => e
puts e.message
end
end
study_ruby_exception 0

当我运行的时候会打印输出:divided by 0 除数为零异常
我想得到这个异常的所有堆栈消息。例如:接防执行这个代码的时候是怎么的调用关系。错在哪个文件的哪 个方法里面等!
我应该怎么输出呢?

2 个回答

可以使用ruby-debug来调试ruby程序


gem install ruby-debug19

或者

gem 'ruby-debug19', :require => 'ruby-debug'

如果你在项目里使用bundler的话。

然后开始调试即可,详细可以参考下面:
Railscasts
ruby-debug reference manual

使用pry 调试吧
介绍pry的文章
http://blog.csdn.net/hexudong08/article/details/7693521

要想获得所有的信息,不要抓取异常,直接抛出。

你的回答