Ruby救援声明是否适用于require?

Ruby rescue语句修饰符是否适用于require

 irb(main):001:0> require 'a' rescue nil LoadError: no such file to load -- a from (irb):1:in `require' from (irb):1 from :0 

您可以从LoadError您只需要使用begin/end样式而不使用内联rescue

这可以按预期工作:

 begin require 'a' rescue LoadError => ex puts "Load error: #{ex.message}" end