невозможно начать прослушивание сервера, следуя указаниям ковбоя - PullRequest
0 голосов
/ 16 ноября 2018

Я пытаюсь следовать руководству по ковбою здесь , и я не могу понять, как запустить http-сервер. Программа компилируется и запускается, но нет http-сервера, который прослушивает порт 8080.

Запуск make run do, кажется, компилируется нормально, и при выполнении команды i() я вижу hello_erlang_sup процесс, как сказано на странице руководства.

Но после применения изменений к hello_world_app:start/2 и запуска make run или make прослушиватель http недоступен.

Я также добавил erlang:display(inside_start), внутри функции и надеялся, что она может печатать на терминал, нет, может, эта функция не вызывается? Но как я могу выяснить, что, как новичок в языке и ковбой, уже есть 100 файлов для мира приветствия;).

Вот функция для справки:

start(_Type, _Args) ->
    erlang:display(inside_start),
    Dispatch = cowboy_router:compile([
        {'_', [
            {"/", hello_handler, []}
        ]}
    ]),
    {ok, _} = cowboy:start_clear(my_http_listener, [{port, 8080}], #{
        env => #{dispatch => Dispatch}
    }),
    hello_world_sup:start_link().

В случае, если это поможет / окажет влияние:

$ erl --version
Erlang/OTP 21 [erts-10.1.1] [source] [64-bit] [smp:8:8] [ds:8:8:10] [async-threads:1] [hipe]

$ uname -a
Linux 4.18.16-arch1-1-ARCH x86_64 GNU/Linux

Некоторые наивные вопросы, на которые я не могу найти ответы, atm:

1) Нужно ли что-то делать, чтобы что-то «запустить», или достаточно make run? я пытался запустить двоичный файл, который находится в _rel/hello_erlang/bin/hello_erlang_release с запуском | остановить | консоль.

2) Может быть, ковбой - это не правильный вариант для меня, чтобы начать. В настоящее время мне интересно узнать, подходит ли мне Эрланг. Возможно, мне не следует начинать с Интернета или не следует использовать какую-либо библиотеку, чтобы устранить путаницу и сосредоточиться только на Эрланге. Есть предложения?

Я наверняка упускаю что-то очень очевидное, но не могу найти это.

Ценю любую помощь, Спасибо

...