elixr 本地模块引用
elixir 的mix 支持引用本地模块,以下是一个简单的学习
参考使用
- 项目结构
├── app
│ ├── README.md
│ ├── lib
│ │ └── app.ex
│ ├── mix.exs
│ └── test
│ ├── app_test.exs
│ └── test_helper.exs
└── login
├── README.md
├── lib
│ └── login.ex
├── mix.exs
└── test
├── login_test.exs
└── test_helper.exs
- 代码说明
上边包含了两个mix 项目,一个app 以及login,app 会通过本地依赖的模式使用login 模块提供的方法
login是一个标准mix cli 创建的项目,核心主要说明关于app 的
mix.exs 配置本地模块依赖
defmodule App.MixProject do
use Mix.Project
def project do
[
app: :app,
version: "0.1.0",
elixir: "~> 1.15",
start_permanent: Mix.env() == :prod,
deps: deps()
]
end
# Run "mix help compile.app" to learn about applications.
def application do
[
extra_applications: [:logger]
]
end
# Run "mix help deps" to learn about dependencies.
defp deps do
[
{:login, path: "../login"}
]
end
end
代码使用模块
app.ex
defmodule App do
def demo do
result = Login.hello
~s"result: #{result}"
end
end
效果
iex -S mix run