【问题标题】:Erlang: why does -behaviour(supervisor) give me "undefined callback function" error?Erlang:为什么 -behaviour(supervisor) 给我“未定义的回调函数”错误?
【发布时间】:2013-05-31 06:36:03
【问题描述】:

当我尝试编译这样开始的 OTP 主管模块时:

-module(gridz_sup).

-behaviour(supervisor).

-export([start_link/0, start_child/2]).

-define(SERVER, ?MODULE).

yada, yada...

我收到以下错误:

gridz_sup.erl:9:警告:未定义的回调函数 init/1(行为“主管”)。

哪位好心人能指出我的错误做法吗?

非常感谢,

LRP

【问题讨论】:

    标签: erlang behavior erlang-otp erlang-supervisor


    【解决方案1】:

    在实现行为回调模块时,必须定义和导出许多强制回调函数。如果没有,您将收到如您所见的警告。对于主管行为,只有一个强制回调函数 init 接受一个参数。

    【讨论】:

    • 谢谢。发现了问题。忘记导出 init/1。
    • @LloydR.Prentice 您的评论应该被提升为回答或至少包含在上面的答案中。它帮助我解决了类似的问题,我实现了功能但忘记导出。
    猜你喜欢
    • 1970-01-01
    • 2017-12-11
    • 1970-01-01
    • 2014-06-04
    • 1970-01-01
    • 1970-01-01
    • 2021-11-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多