lpi*_*pil 6 elixir-mix elixir hex-pm
我正在编写的Elixir库有两个自定义混合任务,一个用于使我的库成为项目依赖项的用户使用,一个用于仅在我的项目中使用.
这里的问题是,在将我的项目添加为dep之后,两个混合任务都可供其项目中的用户使用.
我该如何防止这种情况?我试图package: [ files: [ etc ] ]在我的Mix配置中避免任务,但它仍然在我的测试项目中可用,它通过git将我的库指定为dep.
目前 Mix 并不真正直接支持私有任务的想法。几个选项是:
在您的文件中定义它mix.exs(例如,作为别名)或tasks/my_task.exs在Code.require_file "tasks/my_task.exs"您的mix.exs. 第二个选项不太好,因为您将执行在您使用的每个混合命令上定义任务的代码
只需使用一个脚本即可。scripts如果需要,可以创建一个目录,然后当您想运行它时,只需执行以下操作:mix run scripts/do_x.ex arg1 arg2 arg3