web-dev-qa-db-ja.com

実行時にRubyでGemバージョンをどのように確認しますか?

Ruby/Railsアプリで現在ロードされているgemのgemバージョンを確認することは可能ですか?

デバッグ中に、次のようなことができるようにしたいと思います。

puts RubyGem.loaded_version(:active_support)

そのようなものは存在しますか?

45
Lance Pollard
puts Gem.loaded_specs["activesupport"].version
71
seangrieve

_Gem.loaded_specs['mini_magick'].version_と比較するときは、Stringではなく_Gem::Version_オブジェクトであるため注意してください。

バージョン文字列には、_Gem.loaded_specs['mini_magick'].version.version_を使用してアクセスできます。これは見苦しく、期待どおりに機能しない可能性があります。 _'2.2' > '2.10'_!

gemバージョンと比較する正しい方法は次のとおりです。

Gem.loaded_specs['mini_magick'].version < Gem::Version.create('2.0')

30
kares