Почему я получаю ошибку `Elixir.ModuleName.function не определена!`, Если я не запускаю `mix clean`
У меня необычная проблема, на которую я не смог найти ответ. Я использую библиотеку (libcluster), которая позволяет вам определить функцию для использования в файле конфигурации. Так что в моем зонтичном проекте, в config/def.exs
файл у меня есть:
config libcluster: connect: {Module.Name, :function, args}
в dev.exs
Тогда есть lib/module/name.ex
с функцией def function(arg), do: <some code>
mix run
будет запускать код в первый раз. Однако, если я снова запускаю код, я получаю сообщение об ошибке:
** (RuntimeError) Elixir.Module.Name.function/1 is undefined!
Если я бегу mix clean
а потом mix run
все снова работает Почему я должен очистить код перед запуском кода, чтобы среда выполнения увидела функцию?