Erlang:[笔记三,构建工具rebar之使用依赖]

来源:互联网 发布:ela原油数据库存网站 编辑:程序博客网 时间:2024/04/28 06:08

概述

类似Java中的Maven,Gradle,在Erlang中同样也有包管理的工具,Rebar提供Erlang依赖(包)管理机制,开发人员可以重复使用已有的模块,通过rebar引入自己的项目直接使用,通过GIT获取托管在github或码云上的项目

使用依赖

1.找到github或码云上将要用到的项目GIT地址,为演示使用自己的项目,git地址为: https://git.oschina.net/woniu201/erlanglib.git 

2.修改rebar.config配置文件
   继续使用笔记二中的mqtt项目,在rebar.config中添加如下:

{sub_dirs, ["rel"]}.
{deps,[
    {erlanglib, ".*", {git, "https://git.oschina.net/woniu201/erlanglib.git",{branch, "master"}}}   
]}.
 
3.修改rel目录下retool.config配置文件
    修改第四行,改后为:

{lib_dirs, ["../deps"]},

4.修改源码文件进行测试
    修改src目录下mqtt_app.erl文件中start/2函数,修改内容如下:

start(_StartType,_StartArgs) ->
% 测试调用deps下的erlanglib
X = erlanglib:add(1,2),
io:format("调用erlang:add(1,2)= ~p ~n", [X]),
io:format("调用erlang:main(),输出结果如下: ~n"),
erlanglib:main(),
mqtt_sup:start_link().

5.编译,发布,测试
        a.进入根目录 编译:rebar compile
        b.发布:rebar generate
        c.测试:cd rel/mqtt  && ./bin/mqtt  console  执行结果如下: