编写一个 Mix 任务,在 deps.get 之后运行
Write a Mix task that runs after deps.get
有没有办法挂接到 Elixir 的 Mix 内置任务以在另一个任务完成后执行一个任务?
我知道你可以做类似的事情。
defmodule Mix.Tasks.Other.Get
use Mix.Task
@shortdoc "Other dependencies?"
def run(_) do
Mix.Task.run("deps.get")
end
end
但我有点想 运行 在 mix deps.get
考虑使用 make
包装最有意义的命令之后立即执行任务。 (即 make deps
运行 mix deps.get
然后 mix other.get
)
您可以为此使用 Mix alias:
defmodule MyApp.MixProject do
use Mix.Project
def project do
[
app: :my_app,
version: "1.0.0",
aliases: aliases()
]
end
defp aliases do
[
"deps.get": ["deps.get", "custom.task"]
]
end
end
有没有办法挂接到 Elixir 的 Mix 内置任务以在另一个任务完成后执行一个任务?
我知道你可以做类似的事情。
defmodule Mix.Tasks.Other.Get
use Mix.Task
@shortdoc "Other dependencies?"
def run(_) do
Mix.Task.run("deps.get")
end
end
但我有点想 运行 在 mix deps.get
考虑使用 make
包装最有意义的命令之后立即执行任务。 (即 make deps
运行 mix deps.get
然后 mix other.get
)
您可以为此使用 Mix alias:
defmodule MyApp.MixProject do
use Mix.Project
def project do
[
app: :my_app,
version: "1.0.0",
aliases: aliases()
]
end
defp aliases do
[
"deps.get": ["deps.get", "custom.task"]
]
end
end