Ruby1.9.2でLoadErrorが出たら

Ruby 1.9.2から$LOAD_PATHにカレントディレクトリが含まれなくなった - ぬいぐるみライフ?

上記エントリでのタイトルにもなっている件についての話。


Rubyリファレンスマニュアルの『$LOAD_PATH』の項にも書いてあるように、

起動時には、-I directory オプションで指定したディレクトリ、環境変数 RUBYLIB の値、コンパイル時に指定したデフォルト値、"." (カレントディレクトリ) を含みます。

がデフォルトのLOAD_PATHの値になってますが、Ruby1.9.2からカレントディレクトリは抜けるようになったっぽいです。


上記エントリでは"require_relative"を使った解決法が書かれていますが、やっぱり後方互換性などの点から、実行したいrubyスクリプトがあるディレクトリをLOAD_PATHに追加するのがいいかなと思いました。


で、LOAD_PATHに追加しようとしたんだけど、LOAD_PATHへの追加のしかたがイマイチわからず、結局"RUBYLIB"に追加しちゃいました。
例えば、"project_hoge"フォルダの中に自分で書いたrubyスクリプトがたくさん入ってたとしたら、".bashrc"を開いて

RUBYLIB=$HOME/work/ruby/project_hoge
export RUBYLIB

みたいに追加すればおkです。


すぐに反映したいときは

source ~/.bashrc

もお忘れなく。

$ ruby -e 'puts $:'

として、さっき.bashrcに指定した値が表示されてれば成功。


しかし、これからrubyでプログラム作るとき、いちいちそのアプリケーションのルートフォルダをRUBYLIBに追加していくのも面倒だしなぁ。何か良い方法はないものかしら。