2010-07-25 5 views
104

Je ne suis certainement pas un développeur Ruby mais j'ai une application sur mon serveur en utilisant Ruby, Gems et Bundler. J'essaye d'installer un autre Ruby sous un compte d'utilisateur différent mais sur le même VPS. Quand je vais courirImpossible de trouver Gemfile

bundle install 

Je reçois l'erreur suivante:

Could not locate Gemfile

je pourrais supprimer le contenu du répertoire ./bundle de sorte que toutes les gemmes sont re tiré par les cheveux pour effacer l'erreur mais nous cela a un impact sur mon autre application en utilisant les mêmes Gems et Bundler? Je ne veux pas risquer de prendre l'autre application.

Répondre

134

Vous n'avez pas Gemfile dans un répertoire où vous exécutez cette commande. Gemfile est un fichier contenant vos paramètres gem pour un programme actuel.

+2

Merci. C'était quelque chose d'aussi simple. J'ai juste eu un problème parce que je devais être connecté en tant qu'utilisateur admin pour exécuter la commande mais le gemfile se trouvait dans un répertoire sous un autre utilisateur. J'ai réussi à le trier. Merci! – Ian

+1

oui, vous avez raison, si vous utilisez cette commande pour installer redmine, vous devriez 'cd [redmine-directory]' puis exécuter cette commande. –

68

Assurez-vous que vous êtes dans le répertoire du projet avant d'exécuter bundle install. Par exemple, après avoir exécuté rails new myproject, vous voulez cd myproject avant d'exécuter bundle install.

+0

Oui, c'était effectivement le problème et j'ai réussi à le régler à la fin. Merci de votre aide. – Ian

5

J'ai eu le même problème et l'ai résolu en utilisant un répertoire différent.

 
bash-4.2$ bundle install 
Could not locate Gemfile 
bash-4.2$ pwd 
/home/amit/redmine/redmine-2.2.2-0/apps/redmine 
bash-4.2$ cd htdocs/ 
bash-4.2$ ls 
app config db extra Gemfile lib plugins Rakefile  script tmp 
bin config.ru doc files Gemfile.lock log public README.rdoc test vendor 
bash-4.2$ cd plugins/ 
bash-4.2$ bundle install 
Using rake (0.9.2.2) 
Using i18n (0.6.0) 
Using multi_json (1.3.6) 
Using activesupport (3.2.11) 
Using builder (3.0.0) 
Using activemodel (3.2.11) 
Using erubis (2.7.0) 
Using journey (1.0.4) 
Using rack (1.4.1) 
Using rack-cache (1.2) 
Using rack-test (0.6.1) 
Using hike (1.2.1) 
Using tilt (1.3.3) 
Using sprockets (2.2.1) 
Using actionpack (3.2.11) 
Using mime-types (1.19) 
Using polyglot (0.3.3) 
Using treetop (1.4.10) 
Using mail (2.4.4) 
Using actionmailer (3.2.11) 
Using arel (3.0.2) 
Using tzinfo (0.3.33) 
Using activerecord (3.2.11) 
Using activeresource (3.2.11) 
Using coderay (1.0.6) 
Using rack-ssl (1.3.2) 
Using json (1.7.5) 
Using rdoc (3.12) 
Using thor (0.15.4) 
Using railties (3.2.11) 
Using jquery-rails (2.0.3) 
Using mysql2 (0.3.11) 
Using net-ldap (0.3.1) 
Using ruby-openid (2.1.8) 
Using rack-openid (1.3.1) 
Using bundler (1.2.3) 
Using rails (3.2.11) 
Using rmagick (2.13.1) 
Your bundle i 
3

J'ai résolu le même problème que en dévissant du répertoire du projet, puis cd de nouveau dans le répertoire du projet et paquet d'installation.

+0

Etrange mais c'est ce qui a fonctionné pour moi aussi: p – nanosoft

-1

Est très simple. quand il est dit 'Impossible de localiser Gemfile' cela signifie que dans le dossier dans lequel vous êtes actuellement ou dans un répertoire dans lequel vous vous trouvez, il n'y a pas de fichier nommé GemFile. Par conséquent, dans votre invite de commande, indiquez un chemin d'accès explicite ou complet du dossier là où le nom de fichier "Gemfile" est, par exemple, cd C: \ Users \ Administrator \ Desktop \ RubyProject \ demo.

Il sera définitivement résolu en une minute.

0

Voici quelque chose que vous pourriez essayer.

Ajoutez ceci à tous les fichiers de configuration que vous utilisez pour exécuter votre application. Rails et autres applications basées sur Rack utilisent ce schéma. Il arrive parfois que vous essayez d'exécuter des choses qui sont des répertoires plus profonds que votre racine où se trouve normalement votre Gemfile. Bien sûr, vous avez résolu ce problème pour l'instant, mais de temps en temps nous avons tous des ennuis avec cette découverte de la Gemfile. J'aime parfois quand vous pouvez avoir toutes les gemmes dans le répertoire .bundle aussi. Il ne fait jamais de mal de garder cette adresse de site sous votre oreiller. http://bundler.io/

Questions connexes