2009-04-18 [長年日記]
_ [ruby] rubyで別のフォルダにあるファイルをrequireする
自分メモ。
rubyで別のフォルダにある(自分が書いた)ファイルをrequireするにはどうすればいいのかな?
というのが分からずにunixのシンボリックリンク機能で逃げてた。
やっぱり不便なので(いまさらようやく)調べてみた。
$LOAD_PATH($: も同意) という配列にrequireされた時に見にいくパスが書いてある。
この配列に見たいパスをつめていくのが普通なのかなー?
とtwitterで聞いてみたら@walf443先生から
「場合によりますが大抵そうですね」と回答を頂いた。ありがたや。(-人-)
さらに、
$LOAD_PATH.unshift で前側に入れる(走査順先頭に)
$LOAD_PATH いじる場合は絶対パスにしてから入れる
というなるほどなアドバイスもいただきました。
例えばこんな感じかな。
これでだいぶスッキリ。ヽ(´▽`)ノ
---
this_file_s_path = File.expand_path(File.dirname(__FILE__))
lib_path = File.expand_path(this_file_s_path + "/../lib/")
$LOAD_PATH.unshift lib_path
$LOAD_PATH.unshift this_file_s_path
---