Я использую rails 4.1 и ruby 2.1.1
Все работает, но когда я запускаю консоль rails, я получаю эту ошибку
> rails console
Loading development environment (Rails 4.1.0)
load error: /home/andreas/.rvm/rubies/ruby-2.1.1/.irbrc
NoMethodError: undefined method `split' for nil:NilClass
/home/andreas/.rvm/scripts/irbrc.rb:41:in `<top (required)>'
После ошибки консоль открывается и может быть использована.
Здесь 41-я строка и окружение в файле .irbrc.
39 # Calculate the ruby string.
40 rvm_ruby_string = ENV["rvm_ruby_string"] ||
41 (ENV['GEM_HOME'] && ENV['GEM_HOME'].split(/\//).last.split(/@/).first) ||
42 ("#{RUBY_VERSION}-p#{RUBY_PATCHLEVEL}" rescue nil) ||
43 (RUBY_DESCRIPTION.split(" ")[1].sub('p', '-p') rescue nil ) ||
44 (`ruby -v` || '').split(" ")[1].sub('p', '-p')
Получаю эти результаты при тестировании на консоли
irb(main):008:0> ENV['GEM_HOME']
=> ""
irb(main):009:0> ENV['GEM_HOME'].split(/\//).last
=> nil
Если я запустил irb вне приложения rails, я получаю
2.1.1 :001 > ENV['GEM_HOME']
=> "/home/andreas/.rvm/gems/ruby-2.1.1"
2.1.1 :002 > ENV['GEM_HOME'].split(/\//).last
=> "ruby-2.1.1"
Знаете ли вы, почему переменная окружения пуста в приложении rails?