2

私は正直とても迷っています。rails コマンドを実行しようとするたびie, rails g controller homeに、コマンド ラインでこのエラーがスローされ、何が起こっているのかわかりません。アンインストールして再インストールspringし、グーグルもしました。

誰か助けてください?

Johnny@Johnnys-MacBook-Pro original_skillup (feature/s3_uploader) $ rails g controller spring
/Users/Johnny/.rvm/gems/ruby-2.2.1/gems/spring-1.3.6/lib/spring/application.rb:102:in `block in preload': undefined method `[]' for nil:NilClass (NoMethodError)
  from /Users/Johnny/.rvm/gems/ruby-2.2.1/gems/spring-1.3.6/lib/spring/application.rb:102:in `map'
  from /Users/Johnny/.rvm/gems/ruby-2.2.1/gems/spring-1.3.6/lib/spring/application.rb:102:in `rescue in preload'
  from /Users/Johnny/.rvm/gems/ruby-2.2.1/gems/spring-1.3.6/lib/spring/application.rb:115:in `preload'
  from /Users/Johnny/.rvm/gems/ruby-2.2.1/gems/spring-1.3.6/lib/spring/application.rb:143:in `serve'
  from /Users/Johnny/.rvm/gems/ruby-2.2.1/gems/spring-1.3.6/lib/spring/application.rb:131:in `block in run'
  from /Users/Johnny/.rvm/gems/ruby-2.2.1/gems/spring-1.3.6/lib/spring/application.rb:125:in `loop'
  from /Users/Johnny/.rvm/gems/ruby-2.2.1/gems/spring-1.3.6/lib/spring/application.rb:125:in `run'
  from /Users/Johnny/.rvm/gems/ruby-2.2.1/gems/spring-1.3.6/lib/spring/application/boot.rb:18:in `<top (required)>'
  from /Users/Johnny/.rvm/rubies/ruby-2.2.1/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
  from /Users/Johnny/.rvm/rubies/ruby-2.2.1/lib/ruby/site_ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `require'
  from -e:1:in `<main>'

ありがとう!

4

3 に答える 3

2

Spring gem がインストールされていて、コントローラーの名前が競合していると思います。

https://github.com/rails/spring

コントローラーの名前を変更してみてください。うまくいけばうまくいきます。乾杯!

于 2015-06-11T01:40:08.100 に答える
0

それがSpring gemのException backrace issueです。

https://github.com/rails/spring/pull/459

春を1.6.1に更新

于 2015-12-23T01:09:06.970 に答える
0

前の回答に対して、home という名前のコントローラーを使用できます (名前付けの問題はありません)。使用しているSpring gemのバージョンに問題があるようです。「bundle install」を実行してみましたか? Github で春の宝石を確認しましたが、宝石に現在問題があるようには見えません。spring gem を削除して、問題が解決しないかどうかを確認できます。問題が解決しない場合は、問題がさらに深刻であることがわかります。

于 2015-06-11T01:46:28.743 に答える