Erlang 使用钢筋释放时如何处理DEP?

Erlang 使用钢筋释放时如何处理DEP?,erlang,rebar,Erlang,Rebar,我正在使用rebar generate来处理释放,但是当我启动 应用程序,将找不到我使用的deps` 我可以使用erl-pa./ebin./deps/*/ebin-s myapp手动启动应用程序 我想知道如何配置rebar.config和reltool.config来处理 依赖关系?谢谢。为了让reltool生成包含依赖项的版本,您需要将它们添加到reltool.config。我有一个名为drill\u讲师的应用程序,它有以下reltool.config。像{app,stdlib,[{inclu

我正在使用
rebar generate
来处理释放,但是当我启动 应用程序,将找不到我使用的deps`

我可以使用
erl-pa./ebin./deps/*/ebin-s myapp
手动启动应用程序

我想知道如何配置
rebar.config
reltool.config
来处理
依赖关系?谢谢。

为了让reltool生成包含依赖项的版本,您需要将它们添加到
reltool.config
。我有一个名为
drill\u讲师
的应用程序,它有以下
reltool.config
。像
{app,stdlib,[{include,include}]},
这样的行告诉reltool在发行版中包含该应用程序。我还在lib_dirs设置中添加了deps

{sys, [
   {lib_dirs, ["../deps"]},
   {erts, [{mod_cond, derived}, {app_file, strip}]},
   {app_file, strip},
   {rel, "drill_instructor", "1",
    [
     kernel,
     stdlib,
     sasl,
     crypto,
     ranch,
     jiffy,
     cowboy,
     jiffy,
     drill_instructor
    ]},
   {rel, "start_clean", "",
    [
     kernel,
     stdlib
    ]},
   {boot_rel, "drill_instructor"},
   {profile, embedded},
   {incl_cond, exclude},
   {excl_archive_filters, [".*"]}, %% Do not archive built libs
   {excl_sys_filters, ["^bin/.*", "^erts.*/bin/(dialyzer|typer)",
                       "^erts.*/(doc|info|include|lib|man|src)"]},
   {excl_app_filters, ["\.gitignore"]},
   {app, sasl,   [{incl_cond, include}]},
   {app, crypto,   [{incl_cond, include}]},
   {app, stdlib, [{incl_cond, include}]},
   {app, kernel, [{incl_cond, include}]},
   {app, cowboy, [{incl_cond, include}]},
   {app, ranch, [{incl_cond, include}]},
   {app, jiffy, [{incl_cond, include}]},
   {app, drill_armory, [{incl_cond, include}]},
   {app, drill_instructor, [{incl_cond, include}, {lib_dir, ".."}]}
  ]}.

{target_dir, "drill_instructor"}.

{overlay, [
       {mkdir, "log/sasl"},
       {copy, "files/erl", "\{\{erts_vsn\}\}/bin/erl"},
       {copy, "files/nodetool", "\{\{erts_vsn\}\}/bin/nodetool"},
       {copy, "files/drill_instructor", "bin/drill_instructor"},
       {copy, "files/drill_instructor.cmd", "bin/drill_instructor.cmd"},
       {copy, "files/start_erl.cmd", "bin/start_erl.cmd"},
       {copy, "files/install_upgrade.escript", "bin/install_upgrade.escript"},
       {copy, "files/sys.config", "releases/\{\{rel_vsn\}\}/sys.config"},
       {copy, "files/vm.args", "releases/\{\{rel_vsn\}\}/vm.args"}
      ]}.
在rebar.config中,我还将rel添加为
子目录

{sub_dirs, ["rel"]}.

谢谢,密钥是
{lib_dirs,[“./deps”]}