gpt4 book ai didi

erlang - 初学者安装模块最简单的方法是什么?

转载 作者:行者123 更新时间:2023-12-04 14:25:45 24 4
gpt4 key购买 nike

我 checkout rebar ,但这似乎太复杂了。也许有人可以发布一些内容,%Post your code here在以下钢筋应用程序中:

%%%-------------------------------------------------------------------
%% @doc myapp public API
%% @end
%%%-------------------------------------------------------------------

-module('myapp_app').

-behaviour(application).

%% Application callbacks
-export([start/2
,stop/1]).

%%====================================================================
%% API
%%====================================================================

start(_StartType, _StartArgs) ->
'myapp_sup':start_link().

%%--------------------------------------------------------------------
stop(_State) ->
ok.

对于初学者有更简单的选择吗?

最佳答案

这就是我最终做的事情:

Install rebar3 :

$ git clone https://github.com/rebar/rebar3.git
$ cd rebar3
.../rebar3$ ./bootstrap

And now you have the script rebar3 and can copy it to somewhere in your $PATH as described in the previous section.



或者,您可以下载 .zip file ,解压缩,然后切换到rebar3目录并发出 ./bootstrap命令。

这将创建可执行文件 rebar3里面 /rebar3目录。我移动了 rebar3可执行到 /usr/local/bin ,这是我的 PATH 环境变量中列出的目录(讨论了各种可能的 PATH 位置 here ):
.../rebar3$ sudo mv rebar3 /usr/local/bin

这使我可以在任何提示下使用 rebar3 命令。如 an alternative ,创建应用程序后(请参阅下一步),您可以将 rebar3 复制到应用程序的目录中,然后从该目录发出 rebar 命令,如下所示:
$ ./rebar3 .....

然后我 created a new app :
~/erlang_programs$ rebar3 new app myapp

(将您的应用名称替换为:myapp)

然后:
~/erlang_programs$ cd myapp
~/erlang_programs/myapp$

为了使用 jsx ,第三方 JSON 库,我添加了 jsx作为 dependency :

Dependencies are listed in rebar.config file under the deps key:

{erl_opts, [debug_info]}.
{deps, [
{jsx, "2.8.0"}
]}.

rebar.config住在这里:
~/erlang_programs/myapp$ ls
LICENSE _build rebar.lock
README.md rebar.config src

然后我将我的 erlang 程序添加到 myapp/src目录:

my_app/src/my.erl:
-module(my).
-export([test/0]).

test() ->
jsx:decode(<<"{\"data\": [1, 2, 3]}">>).

最后:
~/erlang_programs/myapp$ rebar3 shell

===> Verifying dependencies...
===> Fetching jsx ({pkg,<<"jsx">>,<<"2.8.0">>})
===> Version cached at /Users/7stud/.cache/rebar3/hex/default/packages/jsx-2.8.0.tar is up to date, reusing it
===> Compiling jsx
===> Compiling myapp

Erlang/OTP 17 [erts-6.4] [source] [64-bit] [smp:4:4] [async-threads:0] [hipe] [kernel-poll:false]

Eshell V6.4 (abort with ^G)
1> my:test().
[{<<"data">>,[1,2,3]}]

如果您对 .erl 文件(在我的情况下为 my.erl 文件)进行更改,则无需退出 shell——只需照常编译即可,例如 c(my) .

关于erlang - 初学者安装模块最简单的方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34278982/

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