Erlang 远程 shell 调试不工作
Erlang remote shell debugging not working
我正在尝试从我的本地 PC 调试在远程 PC 上启动的 Erlang 节点。
为了进行调试,我使用了带有 Erlang 插件的最新 IntelliJ Idea。
远程节点是这样启动的:
erl -pa /path/to/myapp/ebin -name myapp@myremote.host -setcookie mycookie -shell -eval "application:start(myapp)."
想法使用 Rebar "Erlang Remote Node" 配置,因此本地节点启动并连接到 myapp@myremote.host.
我可以确认连接,因为 "nodes()." 在远程 shell 上显示我从本地计算机连接的节点。 net_adm ping/pong 也有效。
"epmd -names" 也显示相应的会话。
不幸的是,我在 IDE 中的所有断点都没有触发,所以我无法停止执行并通过 IDE 进行逐步调试。
同时,如果两个节点都在本地 PC 上启动,这样的调试会话就像一个魅力。
请告诉我我做错了什么。非常感谢。
PS:我也试过使用短节点名称,结果相同。
您应该设置 epmd 以侦听外部 IP (http://erlang.org/doc/man/epmd.html),然后 DNS 名称 "myremote.host" 应该解析为 IP
我正在尝试从我的本地 PC 调试在远程 PC 上启动的 Erlang 节点。 为了进行调试,我使用了带有 Erlang 插件的最新 IntelliJ Idea。
远程节点是这样启动的:
erl -pa /path/to/myapp/ebin -name myapp@myremote.host -setcookie mycookie -shell -eval "application:start(myapp)."
想法使用 Rebar "Erlang Remote Node" 配置,因此本地节点启动并连接到 myapp@myremote.host.
我可以确认连接,因为 "nodes()." 在远程 shell 上显示我从本地计算机连接的节点。 net_adm ping/pong 也有效。 "epmd -names" 也显示相应的会话。
不幸的是,我在 IDE 中的所有断点都没有触发,所以我无法停止执行并通过 IDE 进行逐步调试。
同时,如果两个节点都在本地 PC 上启动,这样的调试会话就像一个魅力。
请告诉我我做错了什么。非常感谢。
PS:我也试过使用短节点名称,结果相同。
您应该设置 epmd 以侦听外部 IP (http://erlang.org/doc/man/epmd.html),然后 DNS 名称 "myremote.host" 应该解析为 IP