我決定在我的Erlang項目中安裝lager。我使用erlang.mk,所以我添加了在通用測試測試運行期間Lager調用失敗
ERLC_OPTS = +'{parse_transform, lager_transform}'
到我的Makefile。我可以運行make all
並編譯模塊沒有錯誤。我也可以啓動一個erl
控制檯並使用lager運行包含模塊的應用程序。在控制檯會話期間,不會生成錯誤並記錄日誌消息。似乎一切都很好(這是我第一次使用啤酒)。但是,當我運行常用的測試中,啤酒調用失敗:
10:11:17.174 [error] CRASH REPORT Process <0.238.0> with 2 neighbours exited with reason: call to undefined function lager:info("Params: ~p", [[]]) in gen_server:init_it/6 line 328
因爲它看起來好像我測試的模塊已經正確編譯,我認爲這是不存在的啤酒模塊的問題。不過,如果我補充一點:
erlang:display(lager:module_info()),
第一啤酒上面稱之爲成功,爲印刷啤酒模塊信息。我假設我正在做的日誌記錄調用正在使用一些解析變換魔術以便工作,而這在我的通用測試運行期間不存在。
任何建議,非常感謝!
解決了!這是由於我的Makefile(不是erlang.mk)中的錯誤。當我得到片刻時,我會添加一個答案。 – Stratus3D 2014-08-27 19:09:38