我是Elixir和凤凰城的新人。目前,我对从私人或本地混合项目下载或使用库感到担忧。 假设我的lib项目名称是: my_custom_mix_app ,以及使用 gen_server 的OTP应用程序。而且我希望它能够像我的凤凰应用程序一样完成下面的代码片段。
defp deps do
[{:phoenix, "~> 1.2.1"},
{:phoenix_pubsub, "~> 1.0"},
{:phoenix_ecto, "~> 3.0"},
{:mariaex, ">= 0.0.0"},
{:phoenix_html, "~> 2.6"},
{:phoenix_live_reload, "~> 1.0", only: :dev},
{:gettext, "~> 0.11"},
{:cowboy, "~> 1.0"},
{:my_custom_mix_app, "~> 1.0"]
end
好吧,因为我来自 Java 背景,我可以通过使用Maven或Gradle来实现,即使lib项目碰巧在我的本地驱动器中,也没有在任何远程Maven仓库中注册。
我怎样才能在Elixir中做到这一点?
P.S。我检查了article关于创建Elixir deps的问题,但它没有解决我对未注册的 lib项目的关注
感谢。
答案 0 :(得分:2)
有两种方法可以使用内部应用依赖
<强>伞强>
defp deps do
...
{:my_app, in_umbrella: true}
end
<强>非伞强>
defp deps do
...
{:my_app, path: "path/to/the/app"}
{:my_app_git, git: "https://repo.com/my/app.git}
end
答案 1 :(得分:0)
您可以通过添加path:
密钥来提供项目的本地路径:
defp deps do
...
{:my_custom_mix_app, path: "path/to/the/app"}
end