0

reabr3 を使用して、RabbitMQ を実行するアプリケーションを作成しましたが、rebar3 は、srcフォルダーに作成した追加ファイルを erlang シェルにロードできません。

使用しrebar3 new app rabbitました。ディレクトリに名前がrabbit_app.erl rabbit_sup.erl and rabbit.app.src付けられた新しい定義済みファイルがありhello_world.erlましたsrc/。を実行してrebar3 compile、コンパイルして依存関係を取得しました。

その後rebar3 shell、 で機能をテストできるようになりましたhello_world.erlhello_world.beamをロードできないため、erlang シェルで手動で使用する必要c(hello_world)があります。少し不便です。

どんな助けでも大歓迎です。rebar3 compileおよびのコンソール出力を次に示しrebar3 shellます。

$ rebar3 compile
===> Verifying dependencies...
===> Fetching amqp_client v3.8.14
===> Fetching rabbit_common v3.8.7
===> Fetching credentials_obfuscation v2.2.0
===> Fetching jsx v2.11.0
===> Fetching lager v3.8.0
===> Fetching ranch v1.7.1
===> Fetching recon v2.5.1
===> Fetching goldrush v0.1.9
===> Analyzing applications...
===> Compiling credentials_obfuscation
===> Compiling goldrush
===> Compiling jsx
===> Compiling lager
===> Compiling ranch
===> Compiling recon
===> Compiling rabbit_common
===> Compiling amqp_client
===> Analyzing applications...
===> Compiling rabbit

$ rebar3 shell
===> Verifying dependencies...
===> Analyzing applications...
===> Compiling rabbit
Erlang/OTP 22 [erts-10.7.2.1] [source] [64-bit] [smp:16:16] [ds:16:16:10] [async-threads:1] [hipe]

Eshell V10.7.2.1  (abort with ^G)
1> ===> Booted xmerl
===> Booted compiler
===> Booted sasl
===> Booted syntax_tools
===> Booted tools
===> Booted goldrush
===> Booted lager
===> Booted jsx
===> Booted ranch
===> Booted recon
===> Booted credentials_obfuscation
===> Booted rabbit_common
===> Booted amqp_client
===> Booted rabbit
 

[更新] 新しく追加されたファイルが読み込まれていることがわかりましたが、これらのファイルのオートコンプリートは機能しませんでした。初めてコマンド全体を使用する必要がありました。

4

1 に答える 1