Не могу найти драгоценные камни в irb:«ИмяОшибка:неинициализированная константа Gem из (irb)»
-
18-09-2019 - |
Вопрос
Когда я запускаю приложение Rails, оно правильно находит все установленные мной драгоценные камни.
Это первый раз, когда я пытался вызвать некоторые драгоценные камни изнутри irb, но он не смог их найти.
blocke:~$ irb
irb(main):001:0> require 'rubygems'
=> true
irb(main):002:0> require 'rails'
LoadError: no such file to load -- rails
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /usr/local/lib/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
from (irb):2
irb(main):003:0>
Когда я запускаю «среду драгоценных камней», я получаю следующее:
blocke:~$ gem environment
RubyGems Environment:
- RUBYGEMS VERSION: 1.3.5
- RUBY VERSION: 1.8.7 (2008-08-11 patchlevel 72) [i486-linux]
- INSTALLATION DIRECTORY: /usr/lib/ruby/gems/1.8
- RUBY EXECUTABLE: /usr/bin/ruby1.8
- EXECUTABLE DIRECTORY: /usr/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86-linux
- GEM PATHS:
- /usr/lib/ruby/gems/1.8
- /home/blocke/.gem/ruby/1.8
- GEM CONFIGURATION:
- :update_sources => true
- :verbose => true
- :benchmark => false
- :backtrace => false
- :bulk_threshold => 1000
- "gem" => "--no-ri --no-rdoc"
- :sources => ["http://gemcutter.org", "http://gems.rubyforge.org/", "http://gems.github.com"]
- REMOTE SOURCES:
- http://gemcutter.org
- http://gems.rubyforge.org/
- http://gems.github.com
Согласно irb, путь к драгоценному камню тот же, за исключением обратного порядка:
blocke:~$ irb
irb(main):001:0> require 'rubygems'
=> true
irb(main):002:0> Gem.path
=> ["/home/blocke/.gem/ruby/1.8", "/usr/lib/ruby/gems/1.8"]
Решение
Это не работает, потому что он не может найти файл «rails.rb» (я думаю, что в геме рельсов такого файла нет).
Вам может потребоваться конкретный компонент рельсов, например «activerecord»:
require 'rubygems'
require 'activerecord'
Или используйте команду «gem», например:
require 'rubygems'
gem 'rails'
Не связан с StackOverflow