2013-09-29 24 views
9

如果我有一個mix.exs文件像怎麼辦:我設置默認的藥劑混合任務

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 

我可以高興地用mix my_task運行此。

我該如何讓my_task成爲默認值,所以當我運行mix而沒有任務時會執行它?

回答

19

看起來你可以將項目塊內部定義使用default_task(mix.exs):

def project do 
    [default_task: "run"] 
end 

更多信息:https://github.com/elixir-lang/elixir/blob/f3f64cdba205253ca0bbc0ce6a5dddd500ffb48f/lib/mix/lib/mix/project.ex#L266-L280

+1

感謝你爲這個。我希望我能給你額外的+1來突出顯示行號,我不知道這是可能的。 –

+1

不錯!你可以使用click來選擇github上的行,然後shift +點擊:) – Eduardo

+0

爲了防止其他人遇到同樣的問題,我應該進入mix.exs,而不是你已經實現的混合任務。 – jacob