簡體   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