Ich benutze Rails 4.1 und Ruby 2.1.1
Alles funktioniert, aber wenn ich rails console ausführe, erhalte ich diesen Fehler
> 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 `'
Nach dem Fehler öffnet sich die Konsole und kann genutzt werden.
Hier ist die 41. Zeile und Umgebung in der .irbrc Datei.
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')
Ich erhalte diese Ergebnisse beim Testen in der Konsole
irb(main):008:0> ENV['GEM_HOME']
=> ""
irb(main):009:0> ENV['GEM_HOME'].split(/\//).last
=> nil
Wenn ich irb außerhalb der Rails-Anwendung ausführe, erhalte ich
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"
Wissen Sie, warum die Umgebungsvariable in der Rails-Anwendung leer ist?