2
내가 유통 고유 한 노드 이름을 생성하고 시작하는 EUNIT 테스트가 시작이 분산 얼랑 노드만큼 잘 작동확인 EPMD는
{A,B,C} = now(),
Nodename = list_to_atom(lists:flatten(io_lib:format(
"[email protected]", [A, B, C]))),
{ok, _} = net_kernel:start([Nodename, shortnames]),
일부 이전 시간에 컴퓨터에서 실행되었습니다하고, 따라서 epmd는 여전히 실행 중이지만 서버를 구축 할 때 나는 그것이 사실이라고 추측 할 수 없습니다.
_ = os:cmd("epmd -daemon"),
을하지만 해킹 같은 느낌 :
나는 나의 시험이를 추가하여 문제를 해결했다.net_kernel:start
을 실행하기 전에 epmd가 시작되도록하는 더 좋고/좋은 방법이 있습니까?
테스트를 어떻게 실행합니까? 'sname' 또는'name'을 제공함으로써 노드로서 erlang 프로세스를 시작하면 프로세스가 암시 적으로 epmd가 실행 중인지를 확인합니다. – troutwine
나는 '철근 귀고리'를 통해 시험을하고있다. – legoscia
나는 본다. 이름을 추가하는 데는 항상 [erl_opts] (https://github.com/basho/rebar/blob/master/rebar.config.sample#L24)가 있지만 그뿐 아니라 일종의 캐시입니다. – troutwine