我的relx配置
{release,{socket,"0.1.0"}}.
{extend_start_script,true}.
我的.app文件
{application,socket,
[{description,[]},
{vsn,"1"},
{registered,[]},
{applications,[kernel,stdlib,cowboy]},
{mod,{socket,[]}},
{env,[{http_port,8080}]},
{modules,[socket_app,socket_socket_handler,socket_sup]}]}.
在使用钢筋编译应用程序后,我从终端运行relx,以下是我得到的输出
===>启动relx构建过程... ===>从目录中解析OTP应用程序:/ home / akshat / Desktop / socket / ebin
/家庭/ akshat /桌面/插座/ DEPS
/ usr / lib中/二郎/ lib中
===>缺少梁文件hipe <<“/ usr / lib / erlang / lib / hipe-3.10.2 / ebin / hipe.beam”>> ===>从目录中解析可用的OTP版本:/ home / akshat /桌面/插座/ EBIN
/家庭/ akshat /桌面/插座/ DEPS
/ usr / lib中/二郎/ lib中
系统中未指定任何版本!
我不理解来自relx的这条消息 . 它不会为我创建发布吗?
如何安装hipe?
更新
在重新安装erlang后,我不再收到hipe错误消息 . 但是螺纹钢仍然表示系统没有指定任何版本 .
2 回答
有这个工作 . 重新安装erlang摆脱了第一个问题,即hipe错误消息 . relx意味着什么
是因为我没有指定要发布的应用程序 . 我的理解是,因为我只有一个应用程序,所以我不需要明确指定它 . 所以我的relx.config文件现在看起来像
这有效,我现在在我的_rel文件夹中有一个版本 .
在我进入app目录并运行rebar3 compile,rebar3 release命令之前,我遇到了完全相同的问题 . 它工作得很完美 .