带有加密应用程序的 Erlang 系统不会在嵌入式模式下启动



我有一个根据以下条件创建的系统 http://www.erlang.org/doc/system_principles/create_target.html
其中包括加密应用程序。

我可以启动它,但是在我将"嵌入模式"添加到bin/start之后,似乎有些东西不再启动了。

被困住了,我该如何调查?我还在bin/start中添加了-sname和-setcookie,当我删除-mode嵌入式系统启动时,应用程序工作正常,我可以使用分布式erlang技术连接到它。但是嵌入后,它根本不会交互。

最小的测试用例是从 https://github.com/basho/rebar/wiki/Release-handling 将以下修补程序应用于示例应用程序 一旦你"重新设置生成"并启动它,你将无法连接到它的erlang vm。它也不会优雅地停止。有什么想法吗?

diff --git a/rel/reltool.config b/rel/reltool.config
index 0c26333..ba4bd35 100644
--- a/rel/reltool.config
+++ b/rel/reltool.config
@@ -6,7 +6,6 @@
          kernel,
          stdlib,
          sasl,
-         crypto,
          test
         ]},
          {rel, "start_clean", "",
@@ -24,7 +23,6 @@
        {app, sasl,   [{incl_cond, include}]},
        {app, stdlib, [{incl_cond, include}]},
        {app, kernel, [{incl_cond, include}]},
-       {app, crypto, [{incl_cond, include}]},
        {app, test, [{incl_cond, include}]}
       ]}.

嵌入式模式下,所有代码在系统启动期间根据 到引导脚本。(代码也可以在以后通过显式加载 命令代码服务器执行此操作)。

我想您可能忘记加载一些库模块。

对于调试erl,您现在使用 +v 吗?

+V

Makes the emulator print out its version number.

**> +v

**Verbose**.**
如何使用钢筋(

钢筋生成)来做同样的事情(释放操作)?钢筋将自动生成相同类型的文件。您可以将这些文件与您的文件进行比较并找出错误。尤其是引导脚本

最新更新