首页 > 其他分享 >elixir mix 自定义任务

elixir mix 自定义任务

时间:2024-01-08 18:03:17浏览次数:36  
标签:task 自定义 mix dalong Mix elixir

elixir 的mix 比较灵活,同时也比较强大,很多时候我们可以自己定义一个任务,方便运行以及构建,不少
三方框架会提供一些方便的cli ,一般也会使用此方法比如ecto orm 框架,以下是一个简单的自定义task 学习

参考开发

  • 目录位置
    这个实际上都f放那里可以,只是有一个简单的约定,建议放到lib/mix/tasks 目录下
  • 任务开发
    一个简单的测试,dalong.ex

 

defmodule Mix.Tasks.Dalong do
  use Mix.Task
  # 定义一个帮助文档
  @moduledoc "simple mix task `mix help dalong`"
  @shortdoc "dalong mix task"
  # 实现run behaviour
  @impl true
  def run(args) do
    IO.inspect(args)
  end
 
end
使用
mix  help dalong
mix dalong  "demoapp"
use Mix.Task

elixir mix 自定义任务_三方框架

 

elixir mix 自定义任务_自定义_02

说明

自定义mix task 在不少框架中都有使用,自己开发一些自定义mix task 也比较简单,很多时候有利于项目开发(比如一些代码生成的场景)

参考资料

https://github.com/elixir-lang/elixir/blob/main/lib/mix/lib/mix/task.ex
https://hexdocs.pm/mix/1.12.3/Mix.Task.html

标签:task,自定义,mix,dalong,Mix,elixir
From: https://blog.51cto.com/rongfengliang/9148210

相关文章

  • elixir 模块名一些参考资料
    elixir的模块名实际上是一个atom类型的数据,以下是一些参考资料参考使用比如一个mixsup项目defmoduleEctoDemo.ApplicationdouseApplication@impltruedefstart(_type,_args)dochildren=[]#此处name实际上就是使用了模块名格式的,因为是......
  • elixir defdelegate 使用
    delegate模式,在不少语言都支持,有些是隐式的(一些早期语言),有些是显式的(新语言,kotlin,swift等)elixir也支持delegate处理,还是比较方便的,以下是一个简单的使用定义原始方法default.ex defmoduleDefaultdodeflogin(name,password)doIO.puts"fromDefault.login"......
  • absinthe elixir 的graphql 框架简单试用
    absintheelixir的graphql框架包含的特性graphql草案的完整实现插件化设计异步字段解析以及批量解析,同时支持插件化的解析支持安全包含了基于GraphiQL的playground项目测试基于了phoenix框架创建phoenix项目mixphx.newabsinthe_phx添加sqliteecto依赖默认phoenix使用了......
  • elixir apply 结合 macro 一个方便的开发技巧
    此玩法实际在Phoenixelixir项目中使用比较多,以下是一个简单的示例示例代码login.exdefmoduleLogindodefdemoappdoquotedoimportunquote(__MODULE__)endenddefdalongdoIO.puts("dalongdemo")enddefmacro__using__(which)whenis_......
  • elixir macro defoverridable 功能
    基于macro的包装函数可以使用defoverridable可以方便进行方法的重写参考使用app.exdefmoduleAppdodefmacro__using__(_options)doquotedodefinitdoIO.puts"doinit"enddeflogindoIO.puts"dologin"end......
  • wasmex webassenbly elixir 运行时
    wasmex是基于wasmtime以及rustnif开发的方便elixir运行webassembly的框架与rust的集成与rust集成使用的三方包 与mjml工具类似使用了rustler_precompiled以及rustlerrust使用的三方包 前边也说了是基于了wasmtime包装的,同时使用了wasmtimewasi一些子模块说明rustle......
  • 【C++】STL 容器 - STL 容器的值语意 ( 容器存储任意类型元素原理 | STL 容器元素可拷
    文章目录一、STL容器的值(Value)语意1、STL容器存储任意类型元素原理2、STL容器元素可拷贝原理3、STL容器元素类型需要满足的要求4、STL容器迭代器遍历二、代码示例-自定义可存放入STL容器的元素类1、代码示例2、执行结果一、STL容器的值(Value)语意1、STL......
  • 一款可实现个性化配置的低代码开发平台,打造完美自定义首页
    通常系统软件都会有首页展示,是用户首次打开系统软件时看到的页面,是用户对软件的第一印象。同时不同的软件类型和目标用户群体对首页的风格和内容会有所差异,JVS低代码平台就可以通过自定义页面引用外部站点来设置成首页,还可以直接在nacos中设置配置文件来切换首页,从而可以提高用户对......
  • 夜莺自定义告警模板
    !!大家好,我是乔克,一个爱折腾的运维工程,一个睡觉都被自己丑醒的云原生爱好者。作者:乔克公众号:运维开发故事博客:www.jokerbai.com预期目标Pastedimage20230906090309.png希望在告警通知里有以下数据:告知当前系统还有多少未处理的告警告知当前告警恢复时候的具体值告警通知里增加查......
  • ant design vue 图片预览组件自定义样式
    这篇文章主要为大家介绍了ant design vue 图片预览组件自定义样式方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪−目录版本:场景:需求:版本:antdesignvue3.2.4场景:使用Image图片组件预览功能需求:自定义预览遮罩层及预览图片的样式;不得影响到其......