Не удалось скомпилировать зависимость:mimerl при добавлении валлаби в мой проект Elixir/Phoenix
Я новичок в Elixir/Phoenix и сейчас хочу написать тесты с использованием Wallaby (или Hound, но это та же проблема).
Для вашей информации я использую изображение Docker.
Я пытаюсь заставить Cabbage и Wallaby работать, но как только я добавлю зависимость Wallaby в мой проект:
...
defp deps do
{:phoenix, "~> 1.3.0"},
...
{:cowboy, "~> 1.0"},
{:wallaby, "~> 0.19.2"}
end
...
тогда у меня появляется следующая ошибка при запуске mix test
:
escript: exception error: no match of right hand side value undefined
in function rebar_log:log/3 (/home/tristan/Devel/rebar3/_build/default/lib/rebar/src/rebar_log.erl, line 94)
in call from rebar3:handle_error/1 (/home/tristan/Devel/rebar3/_build/default/lib/rebar/src/rebar3.erl, line 325)
in call from escript:run/2 (escript.erl, line 759)
in call from escript:start/1 (escript.erl, line 277)
in call from init:start_em/1
in call from init:do_boot/3
** (Mix) Could not compile dependency :mimerl, "/root/.mix/rebar3 bare compile --paths "/application/_build/test/lib/*/ebin"" command failed. You can recompile this dependency with "mix deps.compile mimerl", update it with "mix deps.update mimerl" or clean it with "mix deps.clean mimerl"
Кто-нибудь, кто знает, почему у меня есть эта ошибка и как я могу это исправить?
2 ответа
Я наконец понял, что стало причиной этой проблемы: прокси!
Сначала я попытался запустить этот процесс rebar3 вручную:
docker run --rm -it <container-name> /root/.mix/rebar3
И у меня уже была ошибка. Поэкспериментировав в контейнере, я обнаружил, что удаление прокси больше не делает процесс из-за каких-либо ошибок.
Таким образом, независимо от Docker, все было связано с отключением прокси-сервера компании на моем компьютере, чтобы он работал через общедоступную сеть.
Вы можете добавить , только::test после версии зависимости и попробовать это, а также запустить mix deps.get перед запуском mix test