繁体   English   中英

为什么 `mix.exs` 的 `Project.application` 函数中的断点没有用?

[英]why breakpoint in `Project.application` function of `mix.exs` is useless?

mix.exs的 mix.exs 文件中,我在mod: {KV.Application, []}, # breakpoint here的行中设置了断点。

开始调试时,它已被忽略。 为什么?

defmodule KV.MixProject do
  use Mix.Project
  #use Application

  def project do
    [
      app: :kv,
      version: "0.1.0",
      elixir: "~> 1.13",
      start_permanent: Mix.env() == :prod,
      deps: deps()
    ]
  end

  # Run "mix help compile.app" to learn about applications.
  def application do

    [
      # mod:{KV,[]},
      # mod: {KV, []},
      mod: {KV.Application, []},  # breakpoint here
      extra_applications: [:logger]
    ]
  end

  # Run "mix help deps" to learn about dependencies.
  defp deps do
    [
      # {:dep_from_hexpm, "~> 0.3.0"},
      # {:dep_from_git, git: "https://github.com/elixir-lang/my_dep.git", tag: "0.1.0"}
    ]
  end
end

mix.exs是一个构建配置脚本,在编译时由mix解析。

VSCode 中的断点是 IEx.Pry 的 UI, IEx.Pry运行时的野兽

也就是说,断点仅在运行时才有意义,在编译的源代码中,而mix.exs是一个编译时配置脚本,与运行时无关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM