我在Ubuntu 11上学习RoR。当我尝试生成应用程序时收到以下消息。我安装错误了吗?
$ rails generate controller Pages home contact
NOTE: Gem.source_index is deprecated, use Specification. It will be removed on or after 2011-11-01.
Gem.source_index called from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/shared_helpers.rb:3.
NOTE: Gem.source_index is deprecated, use Specification. It will be removed on or after 2011-11-01.
Gem.source_index called from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/source.rb:162.
NOTE: Gem::SourceIndex#each is deprecated with no replacement. It will be removed on or after 2011-11-01.
Gem::SourceIndex#each called from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/source.rb:162.
NOTE: Gem.source_index is deprecated, use Specification. It will be removed on or after 2011-11-01.
Gem.source_index called from /usr/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/shared_helpers.rb:84.
答案 0 :(得分:52)
这对我有用:降级rubygems:
gem update --system 1.6.2
找到了这个建议
答案 1 :(得分:28)
试试这个:
sudo gem update bundler
这会将bundler更新到最新版本(目前为1.0.15)。这不会产生警告,或者至少在我的情况下这是警告的原因。
答案 2 :(得分:14)
解决此问题的最佳方法是:
$ gem pristine --all --no-extensions
这将重建所有宝石(不包括具有原生扩展名的宝石)并更新其gemspecs。如果您没有任何具有本机扩展名的gem,或者您没有在这些gem上使用任何自定义编译标志,那么您也可以省略--no-extensions
标志。否则你必须单独建造它们。
答案 3 :(得分:1)
我试过“sudo gem update”。 之后,我不再看到消息“Gem.source_index已弃用,请使用规范...”。耶!
答案 4 :(得分:-1)