2015-06-06 2 views
56

Каков правильный способ запуска приложения Elixir?Как запустить приложение Elixir?

Я создаю простой проект по:

mix new app 

и после того, что я могу сделать:

mix run 

, который в основном компилирует мое приложение один раз. Поэтому, когда я добавляю:

IO.puts "running" 

в lib/app.ex я вижу "running" только в первый раз, каждый последующий run не делает ничего, если не некоторые изменения. Что делать дальше сгенерированным app.app?

Конечно, я знаю, что я могу сделать:

escript: [main_module: App] 

в mix.exs, обеспечивают def main(args):, а затем:

mix escript.build 
./app 

, но это это своего рода громоздким, на мой взгляд.

Там также что-то вроде:

elixir lib/app.exs 

, но это не считается mix.exs, очевидно, что необходимо для зависимостей в моей app.

+0

Если вы хотите запустить скрипт Elixir (файл '.exs'), но сделать это в контексте вашего приложения-микса, вы можете запустить' mix run

6

Вы можете запускать задачи, импортировав Mix.Task в свой модуль вместо mix run.

Я думаю, что this - это то, что вы ищете.

Кроме того, вместо mix <task.run> вы можете просто запустить mix для выполнения задачи по умолчанию. Просто добавьте default_task: "bot.run" в список def project do [..] end в mix.exs. См. here.

Смежные вопросы