당신이 사용한 것은 반드시 잘못된 방법은 아니지만 몇 가지 문제가 노출 될 수 있습니다. 예를 들어,이 방법을 사용하면 응용 프로그램을 시작하기 전에 시작해야하는 종속 응용 프로그램을 시작할 수 있습니다.
loading
또는 starting
종속 OTP 응용 프로그램 또는 라이브러리에 대한 다른 대안이 있습니다.
1) 사용 erl
명령 줄 플래그 :
erl -pa ebin deps/*/ebing -s your_dep_app start -s your_app start
2)를 처리하기위한 패키지 매니저를 사용 : 당신을 위해 그것을 처리 할 수있는 패키지 관리자로 예를 철근 같이
. 필요한 것은 응용 프로그램 종속성을 rebar.config
으로 지정하고 Rebar2의 경우 rebar get-deps
또는 Rebar3의 경우 rebar3 compile
을 발급하는 것입니다. Rebar3에 대한 샘플 설정 파일의 코드 조각은 다음과 같은 :
{deps,[
%% Packages
rebar,
{rebar,"1.0.0"},
{rebar, {pkg, rebar_fork}}, % rebar app under a different pkg name
{rebar, "1.0.0", {pkg, rebar_fork}},
%% Source Dependencies
{rebar, {git, "git://github.com/erlang/rebar3.git"}},
{rebar, {git, "http://github.com/erlang/rebar3.git"}}]}.
을 보강 철근 종속성 관리자에 대한 자세한 내용은 this 링크에서보세요.
또한 보강 철근을 사용하여 보강 작업을 시작하거나로드 할 때 해제를 수행하고 보강 철근이 시작하거나로드 할 수 있습니다.
{relx, [
{release,
{your_app, "0.1.0"},
[your_dep_app_1,
{your_dep_app_2, load}]}]}.
이 설정로드와 your_dep_app_1
을 시작하지만 단지 your_dep_app_2
로드 : 샘플 철근 설정 파일의 조각은 릴리스를 만들기위한됩니다 다음. 철근 릴리즈 관리자에 대한 자세한 내용은 this 링크를 참조하십시오.