2015-05-18 3 views
1

Прошу прощения, если я пропустил что-то очевидное. Я новичок в Ruby.Ruby не может найти драгоценный камень в gemset

Моя общая цель - добавить функциональность к существующему скрипту, который использует rvm и gemsets.

Когда я устанавливаю новые драгоценные камни в конкретный гемсет, require s в моих сценариях не может их найти. Я использую следующий экземпляр РВМ:

$ rvm current 
[email protected] 

Для подтверждения:

$ which ruby 
/Users/user/.rvm/rubies/jruby-1.6.7.2/bin/ruby 
$ ruby -v 
jruby 1.6.7.2 (ruby-1.8.7-p357) (2012-05-01 26e08ba) (Java HotSpot(TM) 64-Bit Server VM 1.8.0_11) [darwin-x86_64-java] 

я указал gemset в установить данный камень (скажем xml-simple).

$ rvm @preflight do gem install xml-simple 
Successfully installed xml-simple-1.1.5 
1 gem installed 

Чтобы проверить камень установлен правильно:

$ gem list 

*** LOCAL GEMS *** 
... 
xml-simple (1.1.5) 
... 

Мы видим, модуль я установил там.

После the xml-simple instructions включить модуль, я запускаю этот скрипт:

require 'xmlsimple'

, который приводит к:

$ ruby testver.rb 
LoadError: no such file to load -- xmlsimple 
    require at org/jruby/RubyKernel.java:1033 
    (root) at testver.rb:1 

Один подозрительный вещь, которую я видел, является то, что распечатав RUBY_VERSION и $LOAD_PATH показывает мне следующее:

$ ruby testver.rb 
1.8.7 
/Users/user/.rvm/rubies/jruby-1.6.7.2/lib/ruby/site_ruby/1.8 
/Users/user/.rvm/rubies/jruby-1.6.7.2/lib/ruby/site_ruby/shared 
/Users/user/.rvm/rubies/jruby-1.6.7.2/lib/ruby/1.8 
. 
+0

Как только я закончил этот пост, я столкнулся с решением из другого сообщения: http://stackoverflow.com/a/4209569/1258020. Добавление '' equire 'rubygems "' 'работало. Написание вопроса, по крайней мере, позволило мне сосредоточиться на проблеме. Вид резины-дакинга. – vincent

ответ