错误时开始Erlang的应用程序(RELX)发布
问题描述:
当我尝试启动由relx
准备二郎释放与伦理崩溃:错误时开始Erlang的应用程序(RELX)发布
{"init terminating in do_boot",{badarg,[{erl_prim_loader,check_file_result,3,[]},{init,get_boot,1,[]},{init,get_boot,2,[]},{init,do_boot,3,[]}]}}
目录列表:
├── bin
├── lib
│ ├── asn1-2.0.2
│ │ ├── ebin
│ │ ├── priv
│ │ └── src
│ ├── bear-0.8.1
│ │ ├── ebin
│ │ └── src
│ ├── cache-1.0.0
│ │ ├── ebin
│ │ ├── priv
│ │ └── src
│ ├── cberl-1
│ │ ├── c_src
│ │ ├── ebin
│ │ ├── include
│ │ ├── priv
│ │ └── src
│ ├── compiler-4.9.2
│ │ ├── ebin
│ │ └── src
│ ├── cowboy-0.8.6
│ │ ├── ebin
│ │ └── src
....................
│ ├── crypto-3.0
│ │ ├── ebin
│ │ ├── priv
│ │ │ └── lib
│ │ └── src
└── releases
└── 0.5.2
在它自己的地方所有的库。
我试图用命令erl -env ERL_LIBS ../libs -erlconto
启动应用程序并成功启动。
看来,在启动文件的问题,但我不知道如何解决这个问题。
请提供任何提示或解决方法。
Tnx!
答
我加
{extended_start_script, true}.
到relx.conf应用程序现在的工作!
Tnx。
答
这通常发生在OTP应用程序的.app
文件缺少所需的依赖关系时。 relx使用.app
的内容来解决依赖关系以进入发行版。
请确保您的所有发布应用程序至少包含和stdlib
,.app
中的applications
元组。
下面是一个例子.app
文件列表kernel
,stdlib
和elk
作为依赖:
{application, prop, [
{description, "Prop Template Generator"},
{vsn, "0.0.1"},
{registered, []},
{applications, [kernel, stdlib, elk]},
{modules, [prop, prop_otp, prop_generator]},
{env, []}
]}.
感谢您的回答!所有依赖relx成功复制到lib /文件夹(如目录列表中所示)。如果我手动启动应用程序(没有启动文件,但设置了ERL_LIBS),它就开始了。 – nikit 2014-10-13 08:37:03