【发布时间】:2017-01-23 01:07:30
【问题描述】:
当脚本中引用了依赖项时,在 Atom IDE 中运行 Elixir 文件时出现错误。
我正在使用 Atom 包“脚本”来运行文件。
代码如下:
# This Elixir code runs fine when using Atom package "Script"
IO.puts "hello world"
当引用依赖项时(在这种情况下为 NimbleCSV)我收到错误:
IO.puts "hello world"
NimbleCSV.define(MyParser, separator: "\t", escape: "\"")
** (UndefinedFunctionError) 函数 NimbleCSV.define/2 未定义(模块 NimbleCSV 不可用) NimbleCSV.define(MyParser, [分隔符: "\t", 转义: "\""]) (stdlib) erl_eval.erl:669: :erl_eval.do_apply/6 (elixir) lib/code.ex:168: Code.eval_string/3
当使用“mix run [filename]”在终端中运行相同的文件时,文件运行没有错误。
如何配置 Atom 以识别 Elixir 依赖项?
【问题讨论】:
-
看起来缺少一个功能。该包只执行
elixir -r <filename>: github.com/rgbkrk/atom-script/blob/… 它应该检查任何父文件夹中是否存在mix.exs,如果找到则运行mix run <filename>。 -
任何可能的解决方法?也许是一种配置脚本包以执行 mix run
的方法? -
尝试将这些更改应用到该包的源代码:gist.github.com/anonymous/a6f62f651a5215ed36f197aba8faf89e 请注意,这将中断运行混合项目中非的 Elixir 脚本。实际的解决方案将需要更多代码。我看看今天能不能抽出时间来写。
-
谢谢多伯特。这些改变奏效了。
标签: atom-editor elixir