2012-10-12 89 views
3

顯然有一些我不明白的Erlang ......好吧,在很多事情中。在Erlang應用程序中設置環境變量

我已經在Rebar下建立了一個名爲cw的應用程序,我啓動它,一切正常。

現在我想創建一個環境變量,所以我可以訪問src目錄。我已經在cw.app.src中輸入以下內容:

{env, [{proj_root, "mypath/apps/cw"}]} 

編譯,從Rebar start.sh開始......一切正常。

現在的奧祕。昨天當我這樣做時,我在Erlang shell中輸入application:get_env(cw,proj_root)時得到了正確的路徑。但是今天我沒有定義。

我錯過了什麼?

非常感謝,

LRP

+0

只是猜測:也許昨天你修改了'cw.app'而不是'cw.app.src'? –

+1

必須加載應用程序才能定義要使用的環境變量。你加載或啓動你的應用程序? – uwiger

回答

2

application:load(cw)應該足夠了。

2

你忘了application:start(cw)第一? 如果應用程序未啓動,則env未定義。