Не удалось скомпилировать зависимость: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

Другие вопросы по тегам