2010-11-29 11 views
1

ceci est mon GemfileRuby on Rails: Heroku: Comment puis-je installer mes gemmes?

source :rubygems 
gem 'rails', '2.3.8' 
gem 'authlogic', '2.1.6' 
gem 'addresslogic', '1.2.1' 
gem 'searchlogic', '2.4.19' 
gem 'subdomain-fu', '0.5.4' 

mais, quand je lance l'application sur Heroku, je reçois "App Crashed"

et le journal dit que je n'ai rails installés, et j'ai besoin les non-rails gemmes énumérées ci-dessus.

Qu'est-ce que je fais mal?

sortie de Heroku pousser

 % git push heroku master 
Counting objects: 10, done. 
Delta compression using up to 4 threads. 
Compressing objects: 100% (6/6), done. 
Writing objects: 100% (6/6), 860 bytes, done. 
Total 6 (delta 3), reused 0 (delta 0) 

-----> Heroku receiving push 
-----> Rails app detected 
-----> WARNING: Detected Rails is not declared in either .gems or Gemfile 
     Scheduling the install of Rails 2.3.8. 
     See http://docs.heroku.com/gems for details on specifying gems. 

-----> Installing gem rails 2.3.8 from http://rubygems.org 
     Successfully installed activesupport-2.3.8 
     Successfully installed activerecord-2.3.8 
     Successfully installed rack-1.1.0 
     Successfully installed actionpack-2.3.8 
     Successfully installed actionmailer-2.3.8 
     Successfully installed activeresource-2.3.8 
     Successfully installed rails-2.3.8 
     7 gems installed 

     Compiled slug size is 11.7MB 
-----> Launching.... done 
     http://%%%%%%%%%%%%%%%%%%%.heroku.com deployed to Heroku 

To [email protected]%%%%%%%%%%%%%%%%%%%.git 
    3ac597d..b849480 master -> master 

heroku log

==> dyno-3334279.log <== 
Missing these required gems: 
    authlogic 
    addresslogic 
    searchlogic 

You're running: 
    ruby 1.8.7.253 at /usr/ruby1.8.7/bin/ruby 
    rubygems 1.3.7 at /home/slugs/362612_b849480_24ac-7763f7d7-8c04-478b-ab13-af81efd3e8c2/mnt/.bundle/gems/ruby/1.8, /home/slugs/362612_b849480_24ac-7763f7d7-8c04-478b-ab13-af81efd3e8c2/mnt/.bundle/gems, /home/slugs/362612_b849480_24ac-7763f7d7-8c04-478b-ab13-af81efd3e8c2/mnt/.gems, /usr/ruby1.8.7/lib/ruby/gems/1.8 

Run `rake gems:install` to install the missing gems. 

==> production.log <== 
# Logfile created on Sun Nov 28 19:41:39 -0800 2010 
+0

Utilisez-vous Rails 3 et la pile Bamboo (récemment définie par défaut)? Il serait également utile de voir la sortie de la console en poussant vers Heroku, et la sortie réelle du fichier journal. – Matchu

+0

fera l'affaire. affichage bientôt. – NullVoxPopuli

+0

Eh bien ... je veux utiliser 2.3.8. Je ne sais rien sur le bambou – NullVoxPopuli

Répondre

3

Si vous avez un fichier nommé Gemfile (dans ce cas précis/orthographe) à la racine de votre dépôt, Heroku utilisera ce fichier pour déterminer toutes les gemmes à installer.

Vous avez mentionné que vous avez un GemFile - si c'est ainsi que le nom de fichier est placé dans votre référentiel, Heroku peut ne pas le ramasser.

+0

J'ai ce fichier .... mais il est encore ignoré ... =/ – NullVoxPopuli

+0

ahhh ... J'ai eu un capital F ... – NullVoxPopuli

0

Vous devez créer un fichier appelé .gems dans la racine de votre application. Ce fichier doit contenir une liste des pierres précieuses dont vous avez besoin et la syntaxe pour définir les dépendances de pierres précieuses sont comme ceci:

rails --version 2.3.8 
authlogic --version 2.1.6 

etc ...

+0

C'est la vieille façon. – yfeldblum

+0

Okay. Cela fait quelques mois que je l'ai fait moi-même et je sais que ça a fonctionné. – DanneManne