Simple OTP Application error
Andrea Di Persio
andrea.dipersio@REDACTED
Fri Jul 3 16:07:10 CEST 2009
Bingo!
I didn't compiled all the application file.
Now it work like a charm!
Thank you very much!
On Jul 2, 8:08 pm, Ulf Wiger <ulf.wi...@REDACTED> wrote:
> The 'undef' part of the error means that erlang
> couldn't find the function hda_app:start/2.
>
> Check that your module has been compiled and is
> accessible via the code path.
>
> BR,
> Ulf W
>
>
>
>
>
> Andrea Di Persio wrote:
> > Hi!
>
> > I'm trying to build a simple otp application to dive deeper in erlang.
>
> > I'm following the example in Joe Armstrong 'Programmin Erlang' and I
> > also tried with some example on the web but I can't make it work
> > correctly.
>
> > The application load correctly but when I run application:start
> > (appname) I get this error:
>
> > application: hda
> > exited: {bad_return,
> > {{hda_app,start,[normal,[]]},
> > {'EXIT',
> > {undef,
> > [{hda_app,start,[normal,[]]},
> > {application_master,start_it_old,4}]}}}}
> > type: temporary
> > {error,{bad_return,{{hda_app,start,[normal,[]]},
> > {'EXIT',{undef,[{hda_app,start,[normal,[]]},
> > {application_master,start_it_old,
> > 4}]}}}}}
>
> > If I run the supervisor alone, it work correctly.
>
> > This is my _app file:
>
> > -module(hda_app).
> > -behaviour(application).
> > -export([start/2, stop/1]).
>
> > start(_Type, _Args) ->
> > hda_supervisor:start_link().
>
> > stop(_State) ->
> > ok.
>
> > This is my .app file:
>
> > {application, hda,
> > [{description, "Help Desk Assistant"},
> > {vsn, "1.0"},
> > {modules, [hda_app, hda_supervisor, customer_server,
> > hda_alarm_handler]},
> > {registered, [customer_server]},
> > {applications, [kernel, stdlib, sasl]},
> > {mod, {hda_app, []}}
> > ]}.
>
> > This is my supervisor:
>
> > -module(sellaprime_supervisor).
> > -behaviour(supervisor). % see erl -man supervisor
>
> > -export([start/0, start_in_shell_for_testing/0, start_link/1, init/
> > 1]).
>
> > start() ->
> > spawn(fun() ->
> > supervisor:start_link({local,?MODULE}, ?MODULE, _Arg =
> > [])
> > end).
>
> > start_in_shell_for_testing() ->
> > {ok, Pid} = supervisor:start_link({local,?MODULE}, ?MODULE, _Arg =
> > []),
> > unlink(Pid).
>
> > start_link(Args) ->
> > supervisor:start_link({local,?MODULE}, ?MODULE, Args).
>
> > init([]) ->
> > %% Install my personal error handler
> > gen_event:swap_handler(alarm_handler,
> > {alarm_handler, swap},
> > {my_alarm_handler, xyz}),
> > {ok, {{one_for_one, 3, 10},
>
> > {ok, {{one_for_one, 3, 10},
> > [{tag1,
> > {customer_server, start_link, []},
> > permanent,
> > 10000,
> > worker,
> > [customer_server]}
> > ]}}.
>
> > Best regards,
> > Andrea.
>
> > ________________________________________________________________
> > erlang-questions mailing list. Seehttp://www.erlang.org/faq.html
> > erlang-questions (at) erlang.org
>
> --
> Ulf Wiger
> CTO, Erlang Training & Consulting Ltdhttp://www.erlang-consulting.com
>
> ________________________________________________________________
> erlang-questions mailing list. Seehttp://www.erlang.org/faq.html
> erlang-questions (at) erlang.org
More information about the erlang-questions
mailing list