2010-01-08 10 views
1

Pour une raison quelconque, lorsque j'exécute la commande rails, il installe la version 2.2.3 de Rails dans/vendor/rails et webbrick utilise cette version au lieu de 2.3 .5 qui est installé comme une gemme. Si je supprime cela, alors il utilise le bon répertoire. Je me souviens avoir utilisé git submodule une fois, mais je ne pense pas que cela ait quelque chose à voir avec ça.La commande 'rails' crée un répertoire avec/vendor/rails qui utilise une mauvaise version des rails

Comment puis-je corriger cela? Merci

Edit:

Je ne ai jamais installé Rails 2.2.3. Bien que je me souvienne vaguement d'utiliser le sous-module git, si cela aide quelqu'un.

+0

Juste pour clarifier, vous utilisez juste 'rails myapp' et obtenir les rails vendored, ou utilisez-vous' rails de râteau: gel: gems' ou 'rails de râteau: gel: edge' après la création de votre application? – Ben

+0

Je viens de lancer "rails appname" et il commence avec Rails 2.3.3 dans le fournisseur. Je dois utiliser un script bash pour enlever les rails du fournisseur et commenter la ligne dans environment.rb –

Répondre

1

Vérifiez vos gemmes locales et les gemmes de votre système. Peut-être, vous l'avez 2.2.3 installé dans la corbeille de votre utilisateur.

+0

J'ai eu quelques gemmes localement dans /home/senthil/.gem/ruby/1.8/gems, mais j'ai ensuite tout installé à partir de là. Je ne pense pas que j'avais Rails pour commencer. D'ailleurs je n'ai jamais installé Rails 2.2.3. Je suis entré dans Rails seulement récemment, définitivement après la sortie de 2.3.5. –

+0

essayez d'exécuter '$ which rails' et '$ rails -v' pour plus d'informations – Vestel

+0

En fait, vous étiez Tyler. J'ai regardé usr/bin/rails. Il s'avère qu'il y avait une section où il a copié Rails à partir d'un autre dossier. J'ai commenté et commenté une autre ligne dans environment.rb et cela fonctionne maintenant. Merci! –

0

Est-ce que la gemme rails est vendue en même temps que vous créez l'application? cela semble très étrange si c'est le cas. Si vous êtes sous Linux ou Mac, il est possible que vous ayez quelque chose dans votre profil bash qui écrase la commande Rails. pour être honnête, on dirait qu'un modèle de rails est en cours d'exécution lorsque vous créez votre application ....

À défaut, est-il possible que vous ayez quelque chose comme des 'rails instantanés' fonctionnant sur votre machine et qui prend le contrôle au lieu de les gemmes de rails?

très étrange. quel système d'exploitation êtes-vous? il est parfois utile d'essayer de créer un nouveau profil utilisateur et de voir si vous rencontrez les mêmes problèmes lorsque vous vous connectez à ce compte ....

+0

Merci pour votre réponse. Je suis sur Ubuntu (9.10). J'ai créé un nouvel utilisateur, mais il utilise toujours les rails 2.2.3. Je ne me souviens pas d'avoir installé des rails instantanés ou quoi que ce soit d'autre. Je suis tombé sur mon .bashrc et .gemrc, rien d'extraordinaire là-bas. Il dit 2.3.5 dans ma liste de gemmes, donc je n'ai aucune idée de l'endroit où il se trouve 2.2.3. –

1

Essayez de lancer:

rake rails::unfreeze 

Ce qui se passe est 2.2.3 est gelé se dans votre répertoire des fournisseurs.

Quant à savoir pourquoi cela se produit, je ne suis pas sûr. Assurez-vous que vous avez réellement 2.3.5. Et dégeler/recongeler devrait le réparer.

rake rails::freeze::gems 
+0

Eh bien, je dois encore y aller et mettre à jour manuellement environment.rb. Je veux être en mesure de ne pas obtenir Rails 2.2.3 dans mon fournisseur quand je fais appname rails. –

Questions connexes