Rails 내에서 루비 버전 확인


81

Rails 내에서 (웹 또는을 통해 script/console) 실행중인 Ruby 버전을 확인할 수있는 방법이 있습니까? Ruby 1.8.6이 설치되어 있지만 Ruby Enterprise Edition 1.8.7-20090928도 설치했으며 올바른 설치를 사용하고 있는지 확인하고 싶습니다.

답변:


164

최상위 상수 사용

RUBY_VERSION

다른 유용한 최상위 상수는

RUBY_PATCHLEVEL
RUBY_PLATFORM
RUBY_RELEASE_DATE

다음은 irb 세션입니다.

irb(main):001:0> RUBY_VERSION
=> "1.8.7"

12

상수 RUBY_VERSION을 시도하십시오. 나는 이것을 광범위하게 사용하여 1.8 또는 JRuby에서 실행 중인지 결정합니다.

또한 프로덕션 모드가 아닌 경우 "/ rails / info / properties"URL을 눌러 빠르게 확인할 수 있습니다.


10

RUBY_VERSION 상수 및 친구 외에도 Config :: CONFIG를 확인하고 싶을 수도 있습니다. 이 해시는 버전 번호뿐 아니라 바이너리 경로, 호스트 이름 등과 같은 기타 유용한 런타임 정보도 포함합니다.


감사합니다. 루비 2.0 및 레일 4.0에 'puts RbConfig.ruby'를 사용하고 '/usr/local/rvm/rubies/ruby-2.0.0-p247/bin/ruby'를 반환합니다.
quatermain

9

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                                                          

이 답변이 거기에 있었으면 좋겠는데 -stackoverflow.com/q/11819525/322020- 하지만 이동할 수 없으므로이 답변 을 삭제하고 거기에 게시 해달라고 요청합니다.
Nakilon 2019
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.