Rails内から(Web上またはを介してscript/console
)実行されているRubyのバージョンを判別する方法はありますか?Ruby 1.8.6をインストールしましたが、Ruby Enterprise Edition 1.8.7-20090928もインストールしましたが、正しいインストールを使用していることを確認したいと思います。
Rails内から(Web上またはを介してscript/console
)実行されているRubyのバージョンを判別する方法はありますか?Ruby 1.8.6をインストールしましたが、Ruby Enterprise Edition 1.8.7-20090928もインストールしましたが、正しいインストールを使用していることを確認したいと思います。
回答:
トップレベル定数を使用する
RUBY_VERSION
その他の便利なトップレベル定数は次のとおりです。
RUBY_PATCHLEVEL
RUBY_PLATFORM
RUBY_RELEASE_DATE
これがirbセッションです:
irb(main):001:0> RUBY_VERSION
=> "1.8.7"
定数RUBY_VERSIONを試してください。私はこれを広範囲に使用して、1.8またはJRubyのどちらで実行しているかを判断します。
また、本番モードでない場合は、URL「/ rails / info / properties」をクリックして簡単に確認できます。
RUBY_VERSION
他の人が述べたように使用してください。
次に、を使用Gem::Version
してバージョン文字列の比較を行うことができます。
require 'rubygems' # Only needed for ruby pre-1.9.0 but it's safe for later versions (evaluates to false).
if Gem::Version.new(RUBY_VERSION) < Gem::Version.new('1.9.0')
extend DL::Importable
else
extend DL::Importer
end