2009-10-27 3 views

답변

6

확인 가용성이 덮여있다 ... 아무것도 그 날이 여부와 같은 보석을 확인 할 수있는 경우 모르겠어요

if !gem_installed("some gem name") 
    system "gem install -l local_copy.gem" 
end 

:

내가 그것을 같이 보일 것입니다 생각 해요 이 previous StackOverflow Quesiton

begin 
    gem "somegem" 
    # with requirements 
    gem "somegem", ">=2.0" 
rescue Gem::LoadError 
    # not installed 
end 

또는

matches = Gem.source_index.find_name(gem.name, gem.version_requirements) 
에서 설치에 관해서는

, 그것은 보석에 대해서도

puts %x(#{cmd}) 
+1

'GEM :: LoadError'는'Gem :: LoadError'이어야합니다. – Anna

+1

'gem install ...'에 대한 시스템 호출 후에'Gem.clear_paths'를 사용하여 실제로 젬을로드 할 수 있습니다. http://stackoverflow.com/questions/9384756/after-installing-a-gem-within-a-script-how-do-i-load-the-gem을 참조하십시오. –

관련 문제