2012-04-12 36 views
6

我明白,一個路徑添加到$ LOAD_PATH只是做

$LOAD_PATH.unshift(path) 

但是我不得不將此行添加到每個程序我寫的。無論如何將它添加到系統級別?

我試圖在Ruby的啓動腳本上搜索一下,但沒有找到答案。我試圖將此行添加到kernel/common/module.rb,ruby_constants.rb,loader.rb等。但都不起作用。

我應該在哪個文件中添加此行?


更新:

我使用Ubuntu 10.04和Rubinius的。沒有系統變量叫做RUBYLIB

嘗試創建一個,但沒有工作。但是我意識到我犯了一個錯誤,忘記在bash腳本.bashrc中添加變量。添加變量後,它一切正常!

回答

7

RUBYLIB環境變量是一個以冒號分隔的路徑列表,其中ruby會預先支持標準的LOAD_PATH。命令行上的ruby -I path也與代碼中的$LOAD_PATH.unshift 'path'相同。 Ruby還將處理來自環境var RUBYOPT的選項。

+0

我以爲他們在1.9之後移除了RUBYLIB?我正在使用Rubinius,但沒有找到RUBYLIB。和紅寶石 - 我也很討厭 – texasbruce 2012-04-12 04:23:55

+0

RUBYLIB在我的紅寶石1.9s工作 – dbenhur 2012-04-12 04:49:56

+0

我只是雙重檢查。沒有RUBYLIB或RUBYOPT env var。我使用的是Ubuntu 10.04和Rubinius 2.0。我也嘗試添加一個系統變量,但它不起作用。 – texasbruce 2012-04-12 04:53:25

2
$ export RUBYLIB=/tmp/test 
$ irb 
ruby-1.9.2-p290 :001 > puts $LOAD_PATH 
/tmp/test 
...