erlang - 使用 erlang.mk 指定应用程序启动顺序

标签 erlang build-tools

我正在尝试从过时的、未维护的构建工具转换为 Erlang.mk。我有一个使用 [Erlang.mk][1] 创建的版本,但启动时失败,我相信是因为应用程序启动顺序错误。

如何指定应用程序的启动顺序?

我本以为它会按照 Makefile 的 LOCAL_DEPS 变量中指定的顺序启动应用程序,但这似乎并没有发生。我已经在文档中查找了所有可以找到的地方,还用谷歌搜索,但没有找到任何东西。

最佳答案

顺序不取决于erlang.mk,而是取决于启动应用程序时的 Erlang VM 本身。当 systools在启动特定应用程序时,它会读取 .app 文件来检查应该预先启动哪个应用程序并启动它们。仅当所有必备应用程序均已成功启动时,才会启动所请求的应用程序。请参阅description of the app文件。

Example from here :

{application, humbundee,
 [{description, "Humble Bundle downloader written in Erlang"},
  {vsn, "0.0.1"},
  {modules,
   [
    =MODULES=
   ]},
  {registered, [hbd_sup, hbd_get_sup]},
  {applications, [kernel, stdlib, sasl, lager]},
  {mod, {hbd_app, []}}
 ]}.

这表示 kernelstdlibsasllager 必须在 humbundee 之前启动 可以启动。

关于erlang - 使用 erlang.mk 指定应用程序启动顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36165942/

相关文章:

Erlang 类型规范

android-studio - 如何在 Android Studio 3.0.1 中更改构建工具版本?

不接受 MSBuild 15 工具版本

android - 使用构建工具版本编译项目依赖 - react native

javascript - 不能在 Windows 中将 GLOB 与 JSHint 一起使用?

erlang - iex 中断菜单中有什么 (k)ill 用途?

erlang - 在Erlang中回溯

sockets - 半建立的 TCP 连接

erlang - Elixir 中的关键字列表列表

android - 错误 aapt : Attribute "font" already defined with incompatible format. 此处定义的原始属性