当您的项目作为mix dep包含时,防止包含混合任务

时间:2015-08-23 16:26:56

标签: elixir mix hex-pm

Elixir库我写的有两个自定义混合任务,一个用于使我的库成为项目依赖项的用户使用,一个用于仅在我的项目中使用。

这里的问题是,在将我的项目添加为dep之后,两个混合任务都可供项目中的用户使用。

如何防止这种情况?我试图在我的Mix配置中避免package: [ files: [ etc ] ]中的任务,但它仍然在我的测试项目中可用,它通过git将我的库指定为dep。

1 个答案:

答案 0 :(得分:3)

目前,Mix并不直接支持私人任务的想法。有两种选择:

  • mix.exs中定义它(例如,作为别名),或在tasks/my_task.exsCode.require_file "tasks/my_task.exs"的{​​{1}}内创建它。第二个选项不是很好,因为您将执行在您使用的每个mix命令上定义任务的代码

  • 只需使用脚本即可。如果需要,创建一个mix.exs目录,然后,当您想要运行它时,只需执行:scripts