安装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/
答案 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:
个变量,他们正在弄乱整个系统。
删除这些线后,我的所有宝石都属于工作属性。
我想我会发布答案以防有人处于同一位置。