Rails:找不到铁路

时间:2012-02-09 13:55:06

标签: ruby-on-rails rubygems

➜  ~  rvm -v

rvm 1.10.2 by Wayne E. Seguin <wayneeseguin@gmail.com>, Michal Papis <mpapis@gmail.com> [https://rvm.beginrescueend.com/]

➜  ~  ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-darwin11.2.0]
➜  ~  rails -v
/Users/hb/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find railties (>= 0) amongst [bigdecimal-1.1.0, io-console-0.3, json-1.5.4, minitest-2.5.1, rake-0.9.2.2, rdoc-3.9.4] (Gem::LoadError)
    from /Users/hb/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
    from /Users/hb/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems.rb:1208:in `gem'
    from /Users/hb/.rvm/gems/ruby-1.9.3-p0/bin/rails:18:in `<main>'
➜  ~  

我刚刚安装了一个干净的ruby安装和rails,我删除了以前所有的宝石,但我仍然遇到这个错误。有任何想法吗 ?是的,我之前有过这个错误,this is what I did

更多信息:

➜  ~  gem list

*** LOCAL GEMS ***

actionmailer (3.2.1)
actionpack (3.2.1)
activemodel (3.2.1)
activerecord (3.2.1)
activeresource (3.2.1)
activesupport (3.2.1)
arel (3.0.0)
builder (3.0.0)
bundler (1.0.22 ruby)
erubis (2.7.0)
hike (1.2.1)
i18n (0.6.0)
journey (1.0.1)
json (1.6.5)
mail (2.4.1)
mime-types (1.17.2)
multi_json (1.0.4)
polyglot (0.3.3)
rack (1.4.1)
rack-cache (1.1)
rack-ssl (1.3.2)
rack-test (0.6.1)
rails (3.2.1)
railties (3.2.1)
rake (0.9.2.2, 0.9.2)
rdoc (3.12)
sprockets (2.3.0, 2.1.2)
thor (0.14.6)
tilt (1.3.3)
treetop (1.4.10)
tzinfo (0.3.31)

➜  ~  gem install rails
Successfully installed rails-3.2.1
1 gem installed
Installing ri documentation for rails-3.2.1...
Installing RDoc documentation for rails-3.2.1...
➜  ~  rails -v
/Users/hb/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in `to_specs': Could not find railties (>= 0) amongst [bigdecimal-1.1.0, io-console-0.3, json-1.5.4, minitest-2.5.1, rake-0.9.2.2, rdoc-3.9.4] (Gem::LoadError)
    from /Users/hb/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:256:in `to_spec'
    from /Users/hb/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/site_ruby/1.9.1/rubygems.rb:1208:in `gem'
    from /Users/hb/.rvm/gems/ruby-1.9.3-p0/bin/rails:18:in `<main>'
➜  ~  

11 个答案:

答案 0 :(得分:96)

这意味着您的Rails安装已损坏或不完整。如果您列出了宝石,很可能找不到railties

$ gem list

运行命令

$ gem install rails

一次。它将下载并安装缺少的依赖项,包括铁路。

答案 1 :(得分:34)

我遇到了同样的问题,在我的情况下,原来是因为我安装了sudo - 它并不一定让普通用户可以使用rails。如果您以前运行gem install rails,请尝试仅运行sudo gem install rails

答案 2 :(得分:16)

我遇到了同样的问题。如果您正在使用RVM,则可能会切换到错误的Ruby版本,如果该目录使用的版本与您当前设置的版本不同,则会导致gem加载错误。

要修复,请在终端的应用程序目录中键入rvm use -yourrubyversion。例如,如果您的应用程序设置为使用ruby 1.9.3类型rvm,请使用-1.9.3。

RVM的工作原理是通过应用程序按照ruby版本分隔你的gem,所以如果你切换到不同的ruby版本,RVM会将以前使用和安装的gem与不同的ruby版本分开,这就是你可能会看到这个问题的原因。

答案 3 :(得分:16)

为我工作

rvm reinstall 1.9.3

然后

gem install rails

答案 4 :(得分:14)

rvm implode就是答案。之前可能出现了问题,现在一切都在rvm重新安装后工作。

答案 5 :(得分:8)

也许你安装了两个或更多版本的铁路和铁路。

gem uninstall railties
gem uninstall rails

然后重新安装。

答案 6 :(得分:5)

安装ruby 1.9.3p194时出现了同样的错误

然后我重新安装了ruby和rails

答案 7 :(得分:1)

西蒙娜的答案很棒。但是,如果您已经在Gemfile中拥有了Rails gem,那么只需尝试使用bundle exec:

bundle exec rails c

这应该足够了。如果没有,那么添加

bundle install
在提到的命令之前

答案 8 :(得分:1)

我安装ZSH之后也遇到了这个问题(想要搞乱它的模板。)

brew update

确实找到了一些我以前没有丢失的更新,但最后还是

gem install rails

突然完全重新安装导轨/系杆系统。不确定ZSH为何删除了它。

答案 9 :(得分:0)

卸载ruby,railsinstaller然后再次安装railsinstaller对我来说很有用!

答案 10 :(得分:0)

我在我的系统(ubuntu)上做了'gem install rails',它安装了大约28个缺失的宝石然后我做了'宝石列表'检查,它就在那里。