在(Gem :: LoadError)中找不到轨道(> = 0)
在安装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/
我不得不sudo gem install bundler
,使其重新工作。
我有一个类似的问题。 不知道是否可以帮助你,但你可能会尝试安装与rvmsudo gem install [gemname]
而不是只是做gem install [gemname]
或sudo gem install [gemname]
。
我试图解释这一点,因为upvotes:
这基本上是一个path问题。 如果你通过gem install
设置gem install
,那么与通过bundler设置的gem(你可以用--path
覆盖它)相比,它们很可能会在另外一个目录中(例如/usr/local/
)。 使用sudo
也可以将它们设置到另一个目录,因为sudo
启动了一个具有不同环境的子shell。 这就是为什么你有rvmsudo
。
如果您想查看其中的差异,请直接回$BUNDLE_PATH
时使用sudo
和rvmsudo
比较$PATH
, $GEM_HOME
, $GEM_PATH
和$BUNDLE_PATH
rvmsudo
。
我遇到类似这样的问题,可能是rvm兼容的问题。 我通过更新rvm到最新版本来修复:
curl -L https://get.rvm.io | bash -s stable --ruby
那么你应该重新加载rvm或者只是打开新的terminal窗口。 然后,我重新安装了捆绑软件“gem install bundler”,并像平常一样运行“捆绑安装”
rvm rubygems current
为我做了诡计。
先去掉ruby吧
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
在安装IntelliJ IDEA和关联的Plugin for Rail Dev之后尝试生成控制器时,我几乎有同样的信息。 从我的应用程序目录,我只是执行捆绑安装,然后能够再次生成控制器。
我知道这是一个非常古老的问题,但是最近我刚刚决定迁移到刚刚设置的服务器上的RVM,并且遇到了同样的问题,那就是gem被安装在错误的地方,只是搞乱了一切。
经过几个小时的爬行之后,我终于明白,在我的根文件夹中的.gemrc
文件中,我以前已经设置了gemhome: and gempath:
variables,而且它们正在搞乱整个系统。
删除这些线后,我所有的gem是工作属性。
只是以为我会张贴我的答案,以防有人在同一个位置。