<div dir="ltr"><div>By default, there's a kind of assumption in rebar3 that you'll use releases to deploy your systems. If you do not, you can use the `rebar3 path' to return a list of all paths, or use specific options:</div><div><br></div><div>  --app            Comma separated list of applications to return paths<br>                   for.<br>  --base           Return the `base' path of the current profile.<br>  --bin            Return the `bin' path of the current profile.<br>  --ebin           Return all `ebin' paths of the current profile's<br>                   applications.<br>  --lib            Return the `lib' path of the current profile.<br>  --priv           Return the `priv' path of the current profile's<br>                   applications.<br>  -s, --separator  In case of multiple return paths, the separator<br>                   character to use to join them.<br>  --src            Return the `src' path of the current profile's<br>                   applications.<br>  --rel            Return the `rel' path of the current profile.</div><div><br></div><div>So for a command like yours, you could use something like -pa `rebar3 path --separator=" -pa " to generate explicit path additions for all dependencies, or use something like `erl -env ERL_LIBS `rebar3 path --lib` and get mostly the same result. When working under a different profile (i.e. tests with new dependencies) you can go `rebar3 as test path ...' and get it to work.</div><div><br></div><div>The `path' task only relies on the 'app discovery' subtask, which basically means that it relies only on the ability of rebar3 to read the shape of your base repo to work. Using this task with `rebar3 get-deps' lets you use rebar3 as a tool solely dedicated to fetching and upgrading dependencies, without caring about the compilation or release phases if you were to use a different tool.<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Apr 25, 2018 at 4:02 AM, Martin Dimitrov <span dir="ltr"><<a href="mailto:mrtndimitrov@gmail.com" target="_blank">mrtndimitrov@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US"><div class="m_98620081803062022WordSection1"><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Hello,</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">I am stuck with rebar3. It generates so many directories and files that I am kind of lost <span style="font-family:"Segoe UI Emoji",sans-serif">😊</span> Previously we were starting our app as:</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">erl.exe -sname <name> +A 1024 -setcookie <cookie> -boot start_sasl -config harmony_DEV -pa "<path-to-yaws>/ebin" -pa "../lib/rabbit_common-3.4.0\<wbr>ebin" -pa "../lib/amqp_client-3.4.0/<wbr>ebin" -pa "../lib/goldrush-0.1.8/ebin" -pa "../lib/lager-3.1.0/ebin" -pa "../lib/gen_smtp-0.9.0/ebin" -pa "../deps/inventory/ebin" -pa "../deps/oauth/ebin" -pa "../deps/rete/ebin" -conf "yaws_DEV.conf" -run yaws -i</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Now I’ve put lager and the rabbit libs as dependencies in the rebar3 config. But do I put yaws as a dependency as well and from where the run the above command?</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Thanks in advance,</p><p class="MsoNormal">Martin</p></div></div><br>______________________________<wbr>_________________<br>
erlang-questions mailing list<br>
<a href="mailto:erlang-questions@erlang.org">erlang-questions@erlang.org</a><br>
<a href="http://erlang.org/mailman/listinfo/erlang-questions" rel="noreferrer" target="_blank">http://erlang.org/mailman/<wbr>listinfo/erlang-questions</a><br>
<br></blockquote></div><br></div>