我有一个本地 gem,我可以从脚本执行,显示在我的 Gemfile.lock 中安装,并在 Rails 控制台中返回 true,并带有“Gem.available?(”< gem name >")。
但是,当我尝试通过 rails 控制台(或 rake 任务或控制器)调用依赖此 gem 的脚本时,我得到“`require': cannot load such file -- < gem name>”。
RubyGems 环境:
- RUBYGEMS VERSION: 1.8.25
- RUBY VERSION: 1.9.3 (2013-02-06 patchlevel 385) [x86_64-linux]
- INSTALLATION DIRECTORY: /home/www-data/.rvm/gems/ruby-1.9.3-p385
- RUBY EXECUTABLE: /home/www-data/.rvm/rubies/ruby-1.9.3-p385/bin/ruby
- EXECUTABLE DIRECTORY: /home/www-data/.rvm/gems/ruby-1.9.3-p385/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /home/www-data/.rvm/gems/ruby-1.9.3-p385
- /home/www-data/.rvm/gems/ruby-1.9.3-p385@global
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- REMOTE SOURCES:
- http://rubygems.org
irb:
$ irb
1.9.3-p385 :001 > require '<gem name>'
=> true
安慰:
RAILS_ENV=production rails console
Loading production environment (Rails 3.2.3)
1.9.3-p385 :001 > require '<gem name>'
LoadError: cannot load such file -- <gem name>
控制台是否在单独的环境中运行?%x( which ruby ) 会拒绝.. gem 也出现在我的 gem 列表中,用于控制台中的 bundle、Gemfile.lock 和 %( gem list )。