undefined method `source_index " pour Gem:Module (NoMethodError)
Je suis en cours d'exécution Rails 2.3.5 application et lors de l'exécution du script/server j'ai montré les éléments suivants:
./script/../config/../vendor/rails/railties/lib/rails/gem_dependency.rb:21:in `add_frozen_gem_path': undefined method `source_index' for Gem:Module (NoMethodError)
from ./script/../config/boot.rb:60:in `load_initializer'
from ./script/../config/boot.rb:44:in `run'
from ./script/../config/boot.rb:17:in `boot!'
from ./script/../config/boot.rb:123
from script/server:2:in `require'
from script/server:2
Si j'en commentaire la ligne 60 en démarrage.rb (Rails::GemDependency.add_frozen_gem_path) et exécuter le script/serveur, j'obtiens ceci:
=> Booting WEBrick
=> Rails 2.3.5 application starting on http://0.0.0.0:3000
./script/../config/../vendor/rails/railties/lib/rails/gem_dependency.rb:21:in `add_frozen_gem_path': undefined method `source_index' for Gem:Module (NoMethodError)
from ./script/../config/../vendor/rails/railties/lib/initializer.rb:298:in `add_gem_load_paths'
from ./script/../config/../vendor/rails/railties/lib/initializer.rb:132:in `process'
from ./script/../config/../vendor/rails/railties/lib/initializer.rb:113:in `send'
from ./script/../config/../vendor/rails/railties/lib/initializer.rb:113:in `run'
from /home/developer/bigpink/config/environment.rb:13
from /home/developer/bigpink/vendor/rails/activesupport/lib/active_support/dependencies.rb:156:in `require'
from /home/developer/bigpink/vendor/rails/activesupport/lib/active_support/dependencies.rb:156:in `require'
from /home/developer/bigpink/vendor/rails/activesupport/lib/active_support/dependencies.rb:521:in `new_constants_in'
from /home/developer/bigpink/vendor/rails/activesupport/lib/active_support/dependencies.rb:156:in `require'
from /home/developer/bigpink/vendor/rails/railties/lib/commands/server.rb:84
from script/server:3:in `require'
from script/server:3
Donc, pas vraiment sûre de savoir quoi faire. En espérant que je peux obtenir une aide rapide. Merci!
Vous devez vous connecter pour publier un commentaire.
Je viens de tomber sur ce problème moi-même tout en essayant de mise à niveau d'une ancienne application Rails de REE 1.8.7 pour 1.9.3-p385. Curieusement, Ruby 1.9.3-p327 fonctionne très bien. Ce qui compte c'était de ruby 1.9.3-p385 avait installé RubyGems version 2.0.2 pour moi, et 1.9.3-p327 a RubyGems v1.8.23 installés.
Gem.source_index
a été abandonné pour un temps, mais depuis Rails 2.3 n'est pas d'obtenir toutes les mises à jour à l'exception de correctifs de sécurité critiques, ce ne sera jamais résolu. RubyGems v2.0 finalement retiré cette méthode. Passer à unerubygems
version antérieure à la version 2.0.0, comme 1.8.25 afin d'obtenir la fonctionnalité de retour pour l'instant. Vous pouvez obtenir une version compatible à l'aide degem update --system 1.8.25
.Comme un élément très important de côté, Rails 2.3.5 doit être mis à jour pour un minimum de 2.3.17. Il existe des failles de sécurité que vous ouvrir à certains très méchant attaques. Dans le long terme, mise à niveau 3.x doit être considéré comme un très fort besoin.
rvm rubygems latest-1.8
downgrade rubygems et résoudre ce problème.rvm rubygems --force latest-1.8
pour rvm utilisateurs,
Ce qui m'a aidé: http://djellemah.com/blog/2013/02/27/rails-23-with-ruby-20/
Je l'ai fait en combinaison avec
gem update --system 1.8.25
, qui pourraient ne pas être nécessaires pour votre cas.