Rails 4每个命令“`load"的错误:没有nil到String的隐式转换. (Mac OS X 10.9) [英] Rails 4 Error with every command "`load': no implicit conversion of nil into String" (Mac OS X 10.9)

查看:162
本文介绍了Rails 4每个命令“`load"的错误:没有nil到String的隐式转换. (Mac OS X 10.9)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我刚刚在运行Mac OS X 10.9 Mavericks的新Macbook上安装了一个全新的Ruby on Rails开发堆栈.

I've just installed a fresh Ruby on Rails dev stack on my new Macbook, which runs Mac OS X 10.9 Mavericks.

这是我的书架:

  • Xcode命令行工具
  • 自制酒
  • Rbenv
  • 捆绑包
  • Ruby 2.1.0
  • 导轨4.1.1

我运行rails new test_app生成了第一个测试应用. 此命令已成功完成,但是自此以来,我在CLI中尝试的每个Rails命令均会返回此类错误消息:

I ran rails new test_app to generate a first test app. This command successfully completed, but since it, every Rails command I try in my CLI returns this kind of error message:

$ test_app > bin/rails server

/Users/me/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.1.3/lib/spring/client/rails.rb:27:in `load': no implicit conversion of nil into String (TypeError)
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.1.3/lib/spring/client/rails.rb:27:in `call'
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.1.3/lib/spring/client/command.rb:7:in `call'
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.1.3/lib/spring/client.rb:26:in `run'
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.1.3/bin/spring:48:in `<top (required)>'
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.1.3/lib/spring/binstub.rb:11:in `load'
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/spring-1.1.3/lib/spring/binstub.rb:11:in `<top (required)>'
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/me/Documents/[PERSONNEL]/dev/test_app/bin/spring:16:in `<top (required)>'
    from bin/rails:3:in `load'
    from bin/rails:3:in `<main>'

尝试启动控制台时出现相同错误:

Same error while trying to start a console:

$ test_app > bin/rails c

/Users/me/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/activesupport-4.1.1/lib/active_support/dependencies.rb:241:in `load': no implicit conversion of nil into String (TypeError)
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/activesupport-4.1.1/lib/active_support/dependencies.rb:241:in `block in load'
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/activesupport-4.1.1/lib/active_support/dependencies.rb:232:in `load_dependency'
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/gems/2.1.0/gems/activesupport-4.1.1/lib/active_support/dependencies.rb:241:in `load'
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from /Users/me/.rbenv/versions/2.1.0/lib/ruby/2.1.0/rubygems/core_ext/kernel_require.rb:55:in `require'
    from -e:1:in `<main>'

bin/rake部分起作用(我可以使用bin/rake routes,但迁移不起作用).

The bin/rake are working partially (I can use bin/rake routes but migrations are not working).

我最后一次尝试是安装 XCode ,但是并不能解决问题.

My last try was to install XCode, but it didn't solve it.

更新:下面提到的命令bundle exec rake rails:update:bin解决了项目的问题,但是需要在每个新问题上执行. 问题似乎更加严重.

UPDATE: the command bundle exec rake rails:update:bin as mentioned bellow solve the problem for project, but needed to be executed on every new problem. The problem seems to be deeper.

推荐答案

好的,我找到了解决方案.

OK I found solution.

我也清理了Mac.而且我遇到了同样的错误.

I've cleaned my mac too. and I got same error.

rails_root/bin文件夹不存在吗?

rails_root/bin folder is not there?

尝试以下

bundle exec rake rails:update:bin

这篇关于Rails 4每个命令“`load"的错误:没有nil到String的隐式转换. (Mac OS X 10.9)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆