kwsktr's study log

kwsktr のおべんきょログ

rake-0.8.7 が見つからないの。

Windows で Rails のチュートリアルをやっていたら、rake ができなくなっていました。

> rake db:migrate
C:/Ruby192/lib/ruby/1.9.1/rubygems.rb:340:in `bin_path': can't find executable rake for rake-0.8.7 (Gem::Exception)

わけもわからず、gem でいろいろいれまくった結果がこれだよ。


とりあえず場所を聞いてみたり……

> gem which rake
c:/Ruby192/lib/ruby/1.9.1/rake.rb

gem から再インストールしてみたり……

> gem install rake
Successfully installed rake-0.8.7
1 gem installed
Installing ri documentation for rake-0.8.7...
Installing RDoc documentation for rake-0.8.7...

翻訳してみたり……

英語から日本語に翻訳
`bin_path'で:(:例外:宝石)すくい- 0.8.7の実行熊手を見つけることができない

けれど、全然治りません。

助けて! Googleさん

Googleさんに聞いてみたことろ、d:id:tagomoris:20100924 を見つけてくれました。

っかしーなー、とかあれこれぐぐってたら、こんなページが見付かった。
http://redmine.ruby-lang.org/issues/show/3677
やりとりを読んでその通りに、バージョン番号の入ってない rake.gemspec ファイルを削除すると回復。やれやれ……。

とのこと。有益情報いただきました。ありがとうございます。
じゃあ、早速やってみよう!


C:\Ruby192\lib\ruby\gems\1.9.1\specifications を、確認すると、

  • rake.gemspec
  • rake-0.8.7.gemspec

の二つがありました。

翻訳の結果からいうと、『0.8.7を見つけることができない』と言われているので、github や hatenaのエントリ の内容とも一致しそうです。
いきなり消すのは怖いから、rake.gemspec を rake.gemspec.bk に rename しておいて、再び……

> rake db:migrate
rake aborted!
No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb, Rakefile.rb)
c:/Ruby192/lib/ruby/gems/1.9.1/gems/rake-0.8.7/lib/rake.rb:2377:in `raw_load_rakefile'
(See full trace by running task with --trace)

……中断されました。今度は別の理由みたい。Rakefile が見つからないと言われているようです。嗚呼、もうどうでもいい。
見つからないんじゃなくて、本当に消してやる!

> gem uninstall rake

You have requested to uninstall the gem:
        rake-0.8.7

(略)

If you remove this gems, one or more dependencies will not be met.
Continue with Uninstall? [Yn]  Y
Successfully uninstalled rake-0.8.7

> gem install rake 
Successfully installed rake-0.8.7
1 gem installed
Installing ri documentation for rake-0.8.7...
Installing RDoc documentation for rake-0.8.7...

そして、再インストール。これで動くようになりました。

教訓

消すならとことん消せ。