1

我有一个 rebar3 项目。在这个项目中,主管应该在多台机器上生成一堆 Erlang 节点。我发现由于日志中的错误,节点永远不会被启动:

sh: no such file or directory h/mberns01/..../prod

仅缺少路径的前导斜杠并且命令的其余部分是正确的。

这个命令是在这个项目的什么地方生成的,为什么它会丢失前导斜杠?我什至不确定我可以在此处提供哪些其他信息来提供帮助——请告诉我。

干杯。

编辑:所以看起来init:get_argument(progname)返回了错误的程序(没有前导/)。不知道为什么...

4

2 回答 2

1

似乎可以通过使用来回避问题slave:start/5,这允许用户指定Prog他们想要在远程主机上运行的内容:

spawn(slave, start, [Host, 'node', [], self(), "erl"])

但它并没有回答为什么缺少/.

于 2018-10-17T16:46:25.267 回答
0

init:get_argument(progname)应该返回{ok,[["name"]]}不是目录,所以没有前导/

另外,出于好奇,你是如何产生新节点的?您使用的是奴隶、游泳池还是其他东西?如果是奴隶,你传递什么论据?

于 2018-10-17T02:31:22.980 回答