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?
Our mix. exs defines two public functions: project , which returns project configuration like the project name and version, and application , which is used to generate an application file. There is also a private function named deps , which is invoked from the project function, that defines our project dependencies.
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
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With