明らかな何かを見逃している場合は、お詫び申し上げます。私はRubyが初めてです。
rvm
私の全体的な目標は、gemsetを使用している既存のスクリプトに機能を追加することです。
新しい gem を特定の gemset にインストールするrequire
と、スクリプト内の s がそれらを見つけられません。次の rvm インスタンスを使用しています。
$ rvm current
jruby-1.6.7.2@preflight
確認するために:
$ 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 を指定して、特定の gem をインストールします (たとえばxml-simple
)。
$ rvm @preflight do gem install xml-simple
Successfully installed xml-simple-1.1.5
1 gem installed
gem が正しくインストールされていることを確認するには:
$ gem list
*** LOCAL GEMS ***
...
xml-simple (1.1.5)
...
そこにインストールしたモジュールが表示されます。
モジュールを含めるための xml-simple の手順に従って、次のスクリプトを実行します。
require 'xmlsimple'
その結果、次のようになります。
$ ruby testver.rb
LoadError: no such file to load -- xmlsimple
require at org/jruby/RubyKernel.java:1033
(root) at testver.rb:1
私が見た疑わしいことの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
.