Rubyを 1.8.2 から1.8.4へ Windows環境でアップグレード - by makotoi

Net::HTTPクラスを使っていたのですがform_postがうまく使えません。いろいろGoogleで調べていると1.8.2ではバグがあるようなので1.8.4にアップグレードすることにしました。
最初にRailsを使おうとしたときにはhttp://www.rubyonrails.org/downにちゃんと「お勧めはRuby 1.8.4です」と書いてあったにも関わらず、同じくそのページにあったWindows用のインストーラーが1.8.2だったので
それをそのままc:ruby上にインストールしていました。どうやら1.8.4の安定版Windows Installerはまだでていないようです。
http://rubyforge.org/frs/?group_id=167から 1.8.4-17 release candidate 2という一ヶ月前にリリースされたバージョンをダウンロードしました。

最初にアップグレードするときは同じディレクトリに上書きしようとおもっていのですが、今後のアップグレードに備え複数バージョンをインストールしようとおもいc:/ruby-1.8.4という別ディレクトリをつくりインストールしました。

別段問題なくインストールは終了したので、とりあえずWEBrickを立ち上げようとすると以下のようなエラーが


C:\work\comebu>ruby script/server
Cannot find gem for Rails =1.1.2:
Install the missing gem with 'gem install -v=1.1.2 rails', or
change environment.rb to define RAILS_GEM_VERSION with your desired version.

あ〜、Rubyいれた後にいれたgemsは古いバージョンのディレクトリに入っているので、また足りない部分を
インストールしなくちゃいけないんですね。

気を取り直して、先ほどのエラーメッセージが薦めてくれたコマンドで再インストール

C:\work\>gem install -v=1.1.2 rails
Attempting local installation of 'rails'
Local gem file not found: rails*.gem
Attempting remote installation of 'rails'
Updating Gem source index for: http://gems.rubyforge.org
Install required dependency activesupport? [Yn] y
Install required dependency activerecord? [Yn] Y
Install required dependency actionpack? [Yn] y
Install required dependency actionmailer? [Yn] y
Install required dependency actionwebservice? [Yn] all
Successfully installed rails-1.1.2
Successfully installed activesupport-1.3.1
Successfully installed activerecord-1.14.2
Successfully installed actionpack-1.12.1
Successfully installed actionmailer-1.2.1
Successfully installed actionwebservice-1.1.2
Installing RDoc documentation for activesupport-1.3.1...
Installing RDoc documentation for activerecord-1.14.2...
Installing RDoc documentation for actionpack-1.12.1...
Installing RDoc documentation for actionmailer-1.2.1...
Installing RDoc documentation for actionwebservice-1.1.2...

そしてWEBRickをもう一度立ち上げると、新しいRubyのバージョンを使って起動に成功しました。

C:\work>ruby script/server
=> Booting WEBrick...
=> Rails application started on http://0.0.0.0:3000
=> Ctrl-C to shutdown server; call with --help for options
[2006-06-12 23:46:28] INFO WEBrick 1.3.1
[2006-06-12 23:46:28] INFO ruby 1.8.4 (2005-12-24) [i386-mswin32]

でもRailsを使っているときにLoginEngineとかRedClothを別途インストールした記憶があるので、それらも全部再インストールが必要なんでしょうか? めんどくさい....とりあえずエラーにぶち当たるごとにインストールしていきたいと思います。

form_postメソッドは使えるようになりました。