如何从Elixir调用第三方Erlang模块?

时间:2016-06-19 17:58:17

标签: elixir mix

我有一个使用混合的Elixir项目。我已经使用了一些内置的erlang模块,但现在我需要使用我在Github上找到的第三方模块。

如何从Elixir导入,构建和调用第三方Erlang模块?

编辑:我现在感兴趣的模块位于https://github.com/aggelgian/erlang-algorithms,特别是edmonds_karp模块。

1 个答案:

答案 0 :(得分:7)

在elixir中添加第三方erlang包非常容易。如果包不在Hex.pm上,那么你可以使用github网址。例如。在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模块:

E.g。

:dfs.run(arg1, arg2)