搜尋

首頁  >  問答  >  主體

ruby-on-rails - ruby​​ 怎麼印出輸出 異常資訊的詳細訊息?

現在有一個測試代碼:
def study_ruby_exception arg_1
begin
puts 10/arg_1
rescue Exception => e
puts e.message
end
end
study_ruby_exception 0
當我運行的時候會打印輸出:pided by 0 除數為零異常
我想得到這個異常的所有堆棧消息。例如:接防執行這個代碼的時候是怎麼的調用關係。錯在哪個文件的哪 個方法裏麵等!
我應該怎麼輸出呢?

PHP中文网PHP中文网2820 天前1153

全部回覆(1)我來回復

  • 大家讲道理

    大家讲道理2017-04-21 10:58:14

    Exception 類別有一個 backtrace 方法會傳回一個包含堆疊的 array ...

    參考代碼 ...

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

    順便多說兩句 ... rescue 其實不一定要跟 begin 一起出現 ...

    你的那個例子其實可以寫成這樣 ...

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

    回覆
    0
  • 取消回覆