Question

If I have a mix.exs file something like:

defmodule Mix.Tasks.My_task do
  use Mix.Task

  @shortdoc "Perform my task"

  def run(_) do
    IO.puts "Working"
  end
end

defmodule ElixirKoans.Mixfile do
  use Mix.Project

  def project do

  ...    

end

I can happily run this with mix my_task.

How do I make my_task be the default, so it is executed when I run mix without a task?

Was it helpful?

Solution

It looks like you can define inside the project block (mix.exs) using default_task:

def project do
  [default_task: "run"]
end

More info: https://github.com/elixir-lang/elixir/blob/f3f64cdba205253ca0bbc0ce6a5dddd500ffb48f/lib/mix/lib/mix/project.ex#L266-L280

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top