繁体   English   中英

如何在mix.exs文件中指向本地灵丹妙药版本?

[英]How do I point to a local elixir version in mix.exs file?

因此,我有一个凤凰项目正在用作各种测试应用程序。 如果我想使用正在使用的本地版本的elixir源代码(并进行更改),如何告诉phoenix使用它? 我还希望能够将其与“ iex -S mix”一起使用。 下面的elixir: ["~> 1.6.0-dev", path: '/my/local/path/to/elixir']不起作用,但这是我想要的。

我已经尝试添加以下内容,但出现语法错误。 将e剂添加到依赖项(在def deps函数中)似乎没有任何作用。 我还使用kiex和kerl进行长生不老药的版本配置。

defmodule PhoenixTestApp.Mixfile do
  use Mix.Project

  def project do
    [
      app: :phoenix_testbed,
      version: "0.0.1",
      elixir: ["~> 1.6.0-dev", path: '/my/local/path/to/elixir']
      elixirc_paths: elixirc_paths(Mix.env),
      compilers: [:phoenix, :gettext] ++ Mix.compilers,
      start_permanent: Mix.env == :prod,
      aliases: aliases(),
      deps: deps()
    ]
  end
  ## some more default config code generated by Phoenix
  # :
  # :
end

您需要使用本地elixir二进制文件。

例如,而不是iex -S mix phx.server ,做$YOUR_LOCAL_ELIXIR_PATH/bin/iex -S mix phx.server 其他类似mixelixir东西是相同的。

您的项目已经由elixir / iex运行,因此尝试从mix.exs文件中设置elixir / iex版本时mix.exs了鸡问题。

选择环境更多的是操作系统的属性,而不是项目的属性。 有很多不同的elixir / erlang版本管理器。 我会(在其他人中)命名;

我个人使用后者,对此我感到满意。 它允许为每个项目设置本地版本(带有本地.exenv文件),全局版本,并可以在不同版本之间轻松切换。

暂无
暂无

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

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