在[](Gem :: LoadError)中找不到rails(> = 0)

时间:2011-06-08 11:31:00

标签: ruby-on-rails ruby ruby-on-rails-3 rubygems rvm

安装rvm,更新.gmrc文件,更新rubygems并运行gem install rails -v ">=3.1.0rc"之后,我现在似乎已经完全搞乱了:

$ rails -v
/usr/local/lib/site_ruby/1.8/rubygems/dependency.rb:247:in `to_specs': Could not find rails (>= 0) amongst [] (Gem::LoadError)
    from /usr/local/lib/site_ruby/1.8/rubygems/dependency.rb:256:in `to_spec'
    from /usr/local/lib/site_ruby/1.8/rubygems.rb:1182:in `gem'
    from /var/lib/gems/1.8/bin/rails:18

myhome@myhome-mini:~$ gem env

RubyGems Environment:
  - RUBYGEMS VERSION: 1.6.2
  - RUBY VERSION: 1.9.2 (2011-02-18 patchlevel 180) [i686-linux]
  - INSTALLATION DIRECTORY: /home/myhome/gems
  - RUBY EXECUTABLE: /home/myhome/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
  - EXECUTABLE DIRECTORY: /home/myhome/gems/bin
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86-linux
  - GEM PATHS:
     - /home/myhome/gems
     - /usr/lib/ruby/gems/1.8
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :benchmark => false
     - :backtrace => false
     - :bulk_threshold => 1000
     - "gemhome" => "/home/myhome/gems"
     - "gempath" => ["/home/myhome/gems", "/usr/lib/ruby/gems/1.8"]
  - REMOTE SOURCES:
     - http://rubygems.org/

7 个答案:

答案 0 :(得分:85)

我遇到了类似的问题。不确定这是否对您有所帮助,但您可能会尝试使用rvmsudo gem install [gemname]安装宝石,而不只是执行gem install [gemname]sudo gem install [gemname]

我试图解释一下因为赞成票:
这基本上是一个路径问题。如果您通过gem install设置了宝石,那么它们很可能会在另一个目录中(例如/usr/local/)与通过bundler设置的宝石相比(您可以使用--path覆盖它)。使用sudo也可以将它们设置到另一个目录,因为sudo启动了一个具有不同环境的子shell。这就是你rvmsudo

的原因

如果您想查看差异,请直接回复时与$PATH$GEM_HOME$GEM_PATH$BUNDLE_PATH进行比较,sudo和{{1 }}

答案 1 :(得分:32)

我必须sudo gem install bundler让它再次运作。

答案 2 :(得分:6)

我遇到了类似的问题,可能存在rvm的兼容问题。 我通过将rvm更新到最新版本来修复:

curl -L https://get.rvm.io | bash -s stable --ruby

然后你应该重新加载rvm或者只是打开新的终端窗口。 然后我重新安装了捆绑包'gem install bundler'并正常运行'bundle install'

答案 3 :(得分:5)

rvm rubygems current

为我做了诀窍。

答案 4 :(得分:1)

首先删除红宝石 然后

sudo apt-get install build-essential libssl-dev libreadline5 libreadline5-dev zlib1g zlib1g-dev

安装所有需要的lib 然后你可以安装ruby和rails

rvm install 1.9.3
rvm --default use 1.9.3
rvm gem install rails

答案 5 :(得分:0)

在安装IntelliJ IDEA和相关的Rail Dev插件后尝试生成控制器时,我收到了相同的消息。从我的app目录中我刚刚执行了bundle install,然后又能够再次生成控制器。

答案 6 :(得分:0)

我知道这是一个非常古老的问题,但我最近决定转移到我刚刚设置的服务器上的RVM,并且遇到了同样的问题,其中宝石被安装在错误的地方而且它只是搞乱一切起来。

经过几个小时的爬行后,我终于发现在我的根文件夹中的.gemrc文件中,我之前已经设置了gemhome: and gempath:个变量,他们正在弄乱整个系统。

删除这些线后,我的所有宝石都属于工作属性。

我想我会发布答案以防有人处于同一位置。