Posted at

`rbenv: rails: command not found`の対処方法

More than 5 years have passed since last update.


状況


  • rbenvを使ってる

  • いつのまにか古いRails(rails-0.9.5)がインストールされてた


  • $ gem uninstall rails -v 0.9.5で古い方を削除

  • 念のため$ gem install rails && rbenv rehash

  • なのにrailsコマンドでタイトルのエラーが発生


対処方法

railtiesをインストールすれば良い。

$ gem install railties && rbenv rehash

(参照)sstephenson / rbenv - rbenv: rails: command not found


ちなみに

$ which railsすると~/.rbenv/shims/railsを向いていると思う。

これはrbenvがrailsコマンドをラップしたもので、実体がどこにあるかは$ rbenv which railsで調べることがでる。

で、それは~/.rbenv/versions/1.9.2-p290/lib/ruby/gems/1.9.1/gems/railties-3.2.3/bin/railsあたりを向いている。

今回$ gem install rails && rbenv rehashをしても効果がなかったのは、


  • rails gem は railties gem とか activerecord gem とかをまとめてインストールするためのgemであってrailsコマンドの配置はしない

  • 一方railsコマンドを配置する railties gem はインストール済みであったために再度配置することはなく、railsコマンドはuninstallで消されっぱなし

ってことじゃないかなぁ。たぶん。