在Ruby中安全地需要gem

有没有办法安全地要求rubygem,以便在没有找到gem时不引发exception?

我正在寻找一个接近这个的解决方案:

if require 'hirb' # do some hirb related stuff else # do other stuff end 

我希望这能确保没有不必要的gem使我的部署失败。

它可能会这样做:

 begin require 'hirb' rescue LoadError => e puts "could not find hirb" end 

最好的方法是使用bundler,这样你就可以确定你的gem真的会被安装。