gpt4 book ai didi

erlang - 如何运行 erlang (rebar build) 应用程序

转载 作者:行者123 更新时间:2023-12-03 22:17:04 24 4
gpt4 key购买 nike

我是 Erlang 世界的新手,目前不知道如何启动我的虚拟 erlang 应用程序。可能,我只是遗漏了一些东西......所以,我用 rebar 创建了一个应用程序(rebar create-app appid=dummys)。

目前我有

  • rebar.config
  • src/dummys.app.src
  • src/dummys_app.erl
  • src/dummys_sup.erl

  • 我发现为了在开发过程中运行应用程序,最好创建一个额外的启动方法,该方法应该调用 application:start(module)。

    我在启动方法中添加了一些基本的日志记录..
    start() ->
    error_logger:info_msg("Starting app(dev)..~n"),
    application:start(dummys_app).

    start(_StartType, _StartArgs) ->
    error_logger:info_msg("Starting app..~n"),
    dummys_sup:start_link().

    如果我尝试
    erl -noshell -pa ebin -s application start dummys
    erl -noshell -pa ebin -s application start dummys_app

    没有输出..

    如果我尝试
    erl -noshell -pa ebin -s dummys start

    erl 因错误而崩溃..

    如果我尝试
    erl -noshell -pa ebin -s dummys_app start

    它只输出“ Starting app(dev).. ”,仅此而已。但我也希望看到“ 正在启动应用程序..

    我错过了什么或做错了什么?

    ==============

    还有一个问题:如何正确地将新模块添加到我的虚拟应用程序中?例如,我有一个名为“*dummys_cool*”的附加模块,它有一个“start”方法。如何告诉我的应用程序运行“dummys_cool#start”方法?

    谢谢!

    最佳答案

    我遇到了这个问题,这是谷歌上的第一个答案。
    如果你使用rebar3,标准配置会有shell编译项目并打开 shell 的命令:

    $ rebar3 shell
    ===> Analyzing applications...
    ===> Compiling myapp
    Erlang/OTP 21 [erts-10.2.4] [source] [64-bit] [smp:4:4] [ds:4:4:10] [async-threads:1]

    Eshell V10.2.4 (abort with ^G)
    1> ===> Booted myapp

    关于erlang - 如何运行 erlang (rebar build) 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16675767/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com