本文介绍了如何在 Mongooseim 中构建 erlang AMQP 客户端的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是 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 客户端的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

06-06 07:11