A rebar plugin to specify path dependencies.
Over time, your project is growing significantly in size! It’s gotten to the point that you probably want to split out a separate OTP applications for others to use.
This plugin add to rebar the supports of path dependencies which are typically sub-applications that live within one repository.
$ rebar3 compile
Let’s start off by making a new OTP application hello_utils inside of your project hello_world:
# inside of hello-world/
$ rebar3 new app hello_utils
This will create a new folder hello_utils inside of which a rebar.config and src folder are ready to be useed.
In order to tell Rebar about this, open up hello_world/rebar.config and add hello_utils to your dependencies:
{deps, [
{hello_utils, {path, "hello_utils"}},
..
]
This tells Rebar that we depend on an application called hello_utils which is found in the hello_utils
folder (relative to the rebar.config file it’s written in).
and then add the plugin to your rebar.config:
{plugins, [
rebar3_path_deps
]}.
Then just compile your application
$ rebar3 compile
===> Compiling rebar3_path_deps
===> Verifying dependencies...
===> Fetching hello_utils ({path,"hello_utils",no_lock})
===> Compiling hello_utils
===> Compiling hello_world