为什么:fs.start_link / 2未定义?

时间:2016-06-02 20:11:33

标签: interop elixir

我正在尝试将fs库与Elixir一起使用。 Windows 10上的Elixir 1.2.5和fs 0.9.2。我在mix.exs中添加了fs到我的依赖项,它似乎就在那里(见下文)但由于某种原因我一直在尝试运行{{} 1}}

我开始:fs.start_link/2,一切都很好。然后我试试这个:iex -S mix返回::fs.known_events()这就是我假设fs正确加载的原因。

但是当我尝试[:created, :modified, :removed, :renamed, :undefined]时,我得到:fs.start_link(:fs_watcher, "/users/ocaten~1")我也尝试了** (UndefinedFunctionError) undefined function :fs.start_link/2(字符列表与字符串)并得到相同的错误。我检查了fs的来源,肯定有一个start_link / 2函数,它已经导出了,所以我真的很难过。

有关我如何进行的任何建议?

1 个答案:

答案 0 :(得分:3)

11 Nov 2015上添加了:fs.start_link/2,而在23 Apr 2015上发布了0.9.2版。在0.9.2之后的hex.pm上没有发布,因此如果你想使用:fs.start_link/2,你将不得不依赖于Github版本:

mix.exs:

defp deps do
  [{:fs, git: "https://github.com/synrc/fs"}]
end

测试:

iex(1)> :fs.start_link(:fs_watcher, "/tmp")
{:ok, #PID<0.168.0>}