问题描述
我是 erlang 的新手.我正在尝试使用我的 mongoose 源构建 RabitMQ Erlang AMQP 客户端库,以便我可以在我的 mongooseim 模块中使用该库.我从这里下载了库源..ez 文件包含两个目录,ebin 和includes.ebin 包含 .beam 文件,而 include 包含 erlang .hrl 文件.如果我将所有 .hrl 文件放入 mongooseim 的 apps/ejabberd/include 目录并将所有 .beam 文件放入 ebin 目录,它会起作用吗?我正在使用 make 和 make rel 来编译 mongooseim.
I am new in erlang. I am trying to build RabitMQ Erlang AMQP client library with my mongoose source so that I can use the library within my mongooseim modules. I downloaded the library source from here. The .ez file contains two directories, ebin and includes. ebin contains .beam files and include contains erlang .hrl files. Will it work if I drop all the .hrl files into mongooseim's apps/ejabberd/include directory and all .beam files into ebin directory? I am using make and make rel for compiling mongooseim.
推荐答案
我发现使用 Jon Brisbin 的钢筋友好型 amqp 库(https://github.com/jbrisbin).我所要做的就是在 rebar.config 文件的依赖项列表中添加 rabbit_common 和 amqp_client repo.
I found its much easier and cleaner using Jon Brisbin's rebar friendly amqp library (https://github.com/jbrisbin). All I had do is to add rabbit_common and amqp_client repo in my dependency list from rebar.config file.
diff --git a/rebar.config b/rebar.config
index c719d98..cafdb0f 100644
--- a/rebar.config
+++ b/rebar.config
@@ -36,6 +36,8 @@
{pa, ".*", {git, "git://github.com/lavrin/pa.git", "c616d3f9"}},
{ecoveralls, ".*", {git, "git://github.com/nifoc/ecoveralls.git", "40fa0d2f2057fff29e964f94fccf6ef2f13d34d2"}},
{mustache, ".*", {git, "git://github.com/mojombo/mustache.erl.git", "d0246fe143058b6404f66cf99fece3ff6e87b7ed"}},
+ {rabbit_common, ".*", {git, "git://github.com/jbrisbin/rabbit_common.git", "rabbitmq-3.5.0"}},
+ {amqp_client, ".*", {git, "git://github.com/jbrisbin/amqp_client.git", {tag, "rabbitmq-3.5.0"}}},
{recon, "2.2.1", {git, "git://github.com/ferd/recon.git", {tag, "2.2.1"}}}
]}.
然后制作并制作rel.我可以使用来自任何 mongooseim 模块的 amqp_client 标头:
Then make and make rel. I can include amqp_client header from any mongooseim module using:
-include_lib("amqp_client/include/amqp_client.hrl").
这篇关于如何在 Mongooseim 中构建 erlang AMQP 客户端的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!