我有一个使用 mix 的 Elixir 项目。我已经使用了一些内置的 erlang 模块,但现在我需要使用我在 Github 上找到的第三方模块。
如何从 Elixir 导入、构建和调用第三方 Erlang 模块?
编辑:我现在感兴趣的模块位于https://github.com/aggelgian/erlang-algorithms,特别是edmonds_karp
模块。
我有一个使用 mix 的 Elixir 项目。我已经使用了一些内置的 erlang 模块,但现在我需要使用我在 Github 上找到的第三方模块。
如何从 Elixir 导入、构建和调用第三方 Erlang 模块?
编辑:我现在感兴趣的模块位于https://github.com/aggelgian/erlang-algorithms,特别是edmonds_karp
模块。
在 elixir 中添加第三方 erlang 包非常容易。如果包不在 Hex.pm 上,那么你可以使用 github url。例如在mix.exs
:
defp deps do
[
{:erlang_algorithms, github: 'aggelgian/erlang-algorithms'},
]
end
然后你可以运行mix deps.get
但是,在您的情况下,这将失败,因为该软件包没有应用程序文件。要解决此更改,将上述更改为:
defp deps do
[
{:erlang_algorithms, github: 'aggelgian/erlang-algorithms', app: false},
]
end
然后再次运行mix deps.get
。
现在您可以访问包中可用的 erlang 模块:
例如
:dfs.run(arg1, arg2)