只是想知道我的Erlang网络工具是怎么回事。我正在运行Ubuntu 15.10,并且已检查是否已安装erlang-webtool软件包。但是,当我尝试运行它时,我得到以下信息:
1> webtool:start().
{error,
{shutdown,
{failed_to_start_child,
{httpd_instance_sup,{127,0,0,1},8888,default},
{shutdown,
{failed_to_start_child,
{httpd_manager,{127,0,0,1},8888,default},
{error,
{invalid_option,
{module_does_not_exist,mod_include}}}}}}}}
=ERROR REPORT==== 7-Mar-2016::15:47:36 ===
Failed initiating web server:
undefined
{invalid_option,{module_does_not_exist,mod_include}}
我的Erlang版本:Erlang / OTP 18 [erts-7.0] [源代码] [64位] [smp:8:8] [async-threads:10] [kernel-poll:false]
有任何想法吗?谢谢。
最佳答案
Webtool在E / OTP 18中似乎已损坏。我看到了同样的事情,当我删除了对mod_include的提及(不再存在)时,webtool可以工作。
快速修复方法:手动编辑webtool.erl,删除提及mod_include
的行,运行erlc webtool.erl
,然后将生成的webtool.beam
复制到ebin目录,覆盖那里的现有文件。
为了进行适当的修复,我打开了一个PR:https://github.com/erlang/otp/pull/985
编辑:PR的结论是该Webtool已过时,并且在版本19中将根本不存在。它也不重要,因此无法计划外的补丁程序。如果出现重要的事情(例如与安全相关的错误),则该补丁可能包括对Webtool的修复。但是,最好的选择是降级到Web工具没有损坏的较低版本,或者执行上面概述的手动修复程序。