88

Rails内から(Web上またはを介してscript/console)実行されているRubyのバージョンを判別する方法はありますか?Ruby 1.8.6をインストールしましたが、Ruby Enterprise Edition 1.8.7-20090928もインストールしましたが、正しくインストールされていることを確認したいと思います。

4

4 に答える 4

177

このグローバル定数を使用します。

RUBY_VERSION

その他の関連するグローバル定数は次のとおりです。

RUBY_PATCHLEVEL
RUBY_PLATFORM
RUBY_RELEASE_DATE

irbセッションによる使用例:

irb(main):001:0> RUBY_VERSION
=> "1.8.7"
于 2009-10-19T16:41:54.710 に答える
12

定数RUBY_VERSIONを試してください。私はこれを広範囲に使用して、1.8またはJRubyのどちらで実行しているかを判断します。

また、本番モードでない場合は、URL「/ rails / info/properties」を押すことで簡単なチェックを行うことができます

于 2009-10-19T16:40:53.543 に答える
10

RUBY_VERSION定数とその仲間に加えて、Config::CONFIGをチェックアウトすることもできます。このハッシュには、バージョン番号だけでなく、バ​​イナリへのパス、ホスト名など、その他の有用なランタイム情報が多数含まれています。

于 2009-10-21T14:08:30.163 に答える
10

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                                                          
于 2015-03-02T10:25:53.363 に答える