如何在 Eclipse 中编译 ejabberd 钩子

How to compile ejabberd hooks in Eclipse

我正在尝试制作简单的 ejabberd 挂钩或模块。为此,我使用 eclipse.

按照这些步骤操作
  1. 创建 Erlang 项目,我将 reference 提供给 ejabberd 源代码,这是我从 github.

    [=35 下载的=]
  2. 现在写代码

    %% @author anuj
    %% @doc @todo Add description to hello_word.
    
    -module(hello_word).
    -behavior(gen_mod).
    -export([start/2,stop/1]).
    
    start(_Host, _Opt) ->
           ?INFO_MSG("Loading module 'mod_hello' ", []).
    
    stop(_Host) ->
              ok.
    

现在我正在使用这个命令编译它

(ErModule1_ejabberd@anuj)2> c(hello_word).

这给了我这个错误信息

hello_word.erl:11: undefined macro 'INFO_MSG/2'
hello_word.erl:8: function start/2 undefined
hello_word.erl:6: Warning: behaviour gen_mod undefined
error

任何人都可以在这个过程中纠正我如何为 ejabberd 制作一个简单的钩子并编译它。

INFO_MSG是在logger.hrl中定义的宏。您需要将其包含在您的文件中:

-include("logger.hrl").