Railsのバージョンを固定 rake rails:freeze:gems

Rails 1.2.3 時代に作っていたものをレンタルサーバー上で運用していたところ、レンタルサーバーのRailsが自動でバージョンアップしたため動かなくなっていた。

それでRailsのバージョンを固定する rakeコマンドで固定しようとしてみた。

rake rails:freeze:gems VERSION=1.2.3

しかし以下のエラーが出てうまくいかない。

Freezing to the gems for Rails 1.2.3
rake aborted!
uninitialized constant Gem::GemRunner

(See full trace by running task with --trace)

調べたところ、require オプションを付ければ良さそうだったので、もう一度トライ。

rake --require=rubygems/gem_runner rails:freeze:gems VERSION=1.2.3

が、また rake aborted! になってしまう・・・・

どうやら、RAILS_ROOT/vendor/rails という空ディレクトリが出来ていてそれが悪さをしているということなので、それを削除し、再度実行してみたところ成功した。