【问题标题】:Erlang webtool won't startErlang webtool 无法启动
【发布时间】:2016-06-21 04:33:08
【问题描述】:

只是想知道我的 Erlang webtool 发生了什么。我正在运行 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] [source] [64-bit] [smp:8:8] [async-threads:10] [kernel-poll:false]

有什么想法吗?谢谢。

【问题讨论】:

  • 看起来 httpd_manager 模块没有正确创建,如果有的话。
  • 查看我编辑的答案。手动修复或降级是您使用 webtool 的唯一选择。

标签: module erlang localhost shutdown


【解决方案1】:

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 的修复。但是,您最好的选择是降级到 webtool 没有损坏的较低版本,或者执行我上面概述的手动修复。

【讨论】:

  • 谢谢纳撒尼尔。确实非常有用的输入。
猜你喜欢
  • 2021-03-18
  • 1970-01-01
  • 1970-01-01
  • 2022-06-15
  • 2012-06-03
  • 2010-11-28
  • 1970-01-01
  • 2013-01-08
  • 2016-03-07
相关资源
最近更新 更多