【问题标题】:erlang system with crypto app does not start in embedded mode带有加密应用程序的 erlang 系统不会以嵌入式模式启动
【发布时间】:2012-11-17 12:30:37
【问题描述】:

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

我可以启动它,但是在我将“-mode embedded”添加到 bin/start 之后,似乎某些东西不再启动了。

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

最小的测试用例是将以下补丁应用到来自https://github.com/basho/rebar/wiki/Release-handling 的示例应用程序一旦你“rebar generate”并启动它,你将无法连接到它的 erlang 虚拟机。它也不会优雅地停止。有什么想法吗?

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}]}
       ]}.

【问题讨论】:

    标签: erlang embedded-resource


    【解决方案1】:

    在嵌入式模式下,所有代码在系统启动期间根据 到启动脚本。 (代码也可以稍后通过显式加载 命令代码服务器这样做)。

    我想你可能忘了加载一些库模块。

    调试erl,你现在用+v吗?

    +V

    Makes the emulator print out its version number.
    

    **> +v

    **Verbose**.**
    

    如何使用rebar (rebar generation) 做同样的事情(释放操作)? Rebar 会自动为您生成相同类型的文件。 您可以将这些文件与您的文件进行比较并找出错误。尤其是启动脚本

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-17
      • 1970-01-01
      • 2013-02-28
      • 1970-01-01
      • 2012-12-17
      • 2019-08-12
      • 1970-01-01
      相关资源
      最近更新 更多