lager_transform未定义错误

来源:互联网 发布:诸葛亮北伐的战略 知乎 编辑:程序博客网 时间:2024/05/16 14:25
lager_transform未定义错误

rebar编译时报错:
D:\server\six>d:/tools/rebar/rebar.cmd compile
==> mysql (compile)
Compiling d:/server/six/deps/mysql/src/mysql_recv.erl failed:
d:/server/six/deps/mysql/src/mysql_recv.erl:none: undefined parse transform 'lager_transform'
d:/server/six/deps/mysql/src/mysql_recv.erl:12:
Warning: Non-UTF-8 character(s) detected, but no encoding declared.
Encode the file in UTF-8 or add "%% coding: latin-1" at the beginning of the file.
Retrying with latin-1 encoding.
ERROR: compile failed while processing d:/server/six/deps/mysql: rebar_abort


lager_transform已加入erl_opts.

将lager在deps列表中提到第一位可解决。

{erl_opts, [{parse_transform, lager_transform}]}.

%% lager must be the first to use lager_transform.
{deps, [{lager, ".*",  {git, "https://github.com/basho/lager.git"}},  
        {mysql, ".*", {git, "https://github.com/dizzyd/erlang-mysql-driver.git"}} ...

rebar仅仅是按依赖项顺序编译。
也可以预先编译lager,然后再rebar compile.

参考:
http://stackoverflow.com/questions/20813513/configuring-lager-i-get-this-error-undefined-parse-transform-lager-transform

0 0