gpt4 book ai didi

elixir - dialyxir mix task to create PLT exits without error or creating table

转载 作者:行者123 更新时间:2023-12-02 00:51:01 25 4
gpt4 key购买 nike

我正在尝试使用 dialyxir 通过它提供的混合任务对我的项目运行透析器分析。

我已将它添加到我的依赖项中并根据 README 进行编译。

当我运行 mix dialyxir.plt 时,它没有报告任何错误,但没有创建表就退出了。

$ mix dialyzer.plt
Starting PLT Core Build ... this will take awhile
dialyzer --build_plt --output_plt /home/vagrant/.dialyxir_core_19_1.3.2.plt --apps erts kernel stdlib crypto public_key -r /usr/local/lib/elixir/bin/../lib/elixir/../eex/ebin /usr/local/lib/elixir/bin/../lib/elixir/../elixir/ebin /usr/local/lib/elixir/bin/../lib/elixir/../ex_unit/ebin /usr/local/lib/elixir/bin/../lib/elixir/../iex/ebin /usr/local/lib/elixir/bin/../lib/elixir/../logger/ebin /usr/local/lib/elixir/bin/../lib/elixir/../mix/ebin
Creating PLT /home/vagrant/.dialyxir_core_19_1.3.2.plt ...

# later

$ ll /home/vagrant
# No file called /home/vagrant/.dialyxir_core_19_1.3.2.plt

# running the mix task errors as expected with no plt

$ mix dialyzer
dialyzer --no_check_plt --plt /home/vagrant/.dialyxir_core_19_1.3.2.plt -Wunmatched_returns -Werror_handling -Wrace_conditions -Wunderspecs /vagrant/_build/dev/lib/ace/ebin

dialyzer: No such file, directory or application: "/home/vagrant/.dialyxir_core_19_1.3.2.plt"

问题是我该如何调试它?

最佳答案

正如您在评论中提到的,运行 dialyzer 时的完整错误消息直接在末尾包含文本 Killed。这是 Linux 的 Out-of-memory killer 杀死了使用过多资源(很可能是 RAM/swap)的进程,因为 VM 只有 ~489MiB 的 RAM。 dialyzer 的 PLT 创建非常占用 CPU/内存,因此增加 RAM(比如 1 或 2GB)应该可以解决这个问题。

关于elixir - dialyxir mix task to create PLT exits without error or creating table,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39854839/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com