2010-07-01 8 views
3

j'utilisais le Rails 3 hier gem beta, mais est retourné à 2.3.8, et, après avoir nettoyé les pierres précieuses du système, je tentais d'exécuter une tâche simple Rake et a obtenu ceci:Pourquoi Ruby ne trouve-t-elle pas Rake?

 
Peleliu:haml jayfallon$ sudo rake install 
/Library/Ruby/Site/1.8/rubygems.rb:779:in `report_activate_error': Could not find RubyGem rake (>= 0) (Gem::LoadError) 
from /Library/Ruby/Site/1.8/rubygems.rb:214:in `activate' 
from /Library/Ruby/Site/1.8/rubygems.rb:1082:in `gem' 
from /usr/bin/rake:18 

Je ne suis pas Bien sûr si cela a à voir avec mon chemin étant borked ou non.

 
RubyGems Environment: 
    - RUBYGEMS VERSION: 1.3.7 

    - RUBY VERSION: 1.8.7 (2009-06-12 patchlevel 174) [i686-darwin10.0.0] 
    - INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.8 
    - RUBY EXECUTABLE: /usr/local/bin/ruby 
    - EXECUTABLE DIRECTORY: /usr/local/bin 
    - RUBYGEMS PLATFORMS: 
    - ruby 
    - x86-darwin-10 
    - GEM PATHS: 
    - /usr/local/lib/ruby/gems/1.8 
    - /Users/jayfallon/.gem/ruby/1.8 
    - GEM CONFIGURATION: 
    - :update_sources => true 
    - :verbose => true 
    - :benchmark => false 
    - :backtrace => false 
    - :bulk_threshold => 1000 
    - :sources => ["http://gems.rubyforge.org/", "http://gems.github.com", "http://gems.github.com", "http://gems.github.com", "http://gems.github.com", "http://gems.github.com", "http://gems.github.com", "http://gems.github.com", "http://gems.github.com", "http://gems.github.com", "http://gemcutter.org/"] 
    - REMOTE SOURCES: 

    - http://gemcutter.org/ 

Répondre

0

Vous devez simplement ajouter râteau sur votre Gemfile

gem 'rake' 
+0

J'essayais d'utiliser Rake en dehors d'une application Rails et juste installer la dernière gemme Haml. - merci – jayfallon

+0

où serait ce fichier gem? –

2

Il semble que Rake essaie de fonctionner à partir de /usr/bin/rake, la version système de Ruby, alors que vous avez une installation personnalisée de Ruby dans /usr/local.

  1. Assurez-vous que vous avez le petit bijou de râteau installé pour l'installation Ruby vous utilisez
  2. Assurez-vous que la commande rake est dans un répertoire sur votre PATH $.

which gem doit retourner l'installation rubygems de /usr/local/bin. Sinon, c'est le premier problème à résoudre. Ensuite, vous voulez vous assurer que vous avez la pierre précieuse de râteau dans votre /usr/local installation de Ruby:

gem list | grep rake 

devrait vous dire si le bijou est installé. Si ce n'est pas le cas, exécutez gem install rake.

À ce stade, which rake doit pointer vers quelque chose dans votre chemin /usr/local. S'il n'utilise pas find /usr/local | grep rake pour déterminer où votre installation Ruby garde les exécutables gem et ajouter ce répertoire à votre chemin de chargement.

En remarque, si vous utilisez votre propre installation de Ruby, vous trouverez peut-être rvm ou rbenv utile pour la gestion des installations et des gemmes.