所以我有一个凤凰项目,我正在使用它作为各种测试应用程序。如果我想使用我正在使用的本地版本的elixir源代码(并进行更改),我该如何告诉phoenix使用它?我也希望能够使用“iex -S mix”。下面的elixir: ["~> 1.6.0-dev", path: '/my/local/path/to/elixir']
不起作用,但这正是我想要做的。
我已经尝试添加以下内容,但是出现语法错误。将elixir添加到依赖项(在def deps
函数中)似乎没有做任何事情。我也使用kiex和kerl进行elixir版本配置。
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
答案 0 :(得分:2)
您需要使用本地elixir二进制文件。
例如,代替iex -S mix phx.server
,执行$YOUR_LOCAL_ELIXIR_PATH/bin/iex -S mix phx.server
。 mix
,elixir
等其他内容相同。
答案 1 :(得分:2)
您的项目已经由elixir
/ iex
运行,因此尝试在elixir
/ iex
版内设置鸡蛋问题mix.exs
/ elixir
1}}文件。
选择环境更多是操作系统的属性,而不是项目的属性。在野外有许多不同的erlang
/ .exenv
版本管理器。我会说(等等);
我个人使用后者,我很高兴。它允许为每个项目设置本地版本(使用本地list_of_dict = [{'text': s, 'value': s.split('.')[0]} for s in list_str]
文件),全局版本,以及在不同版本之间轻松切换。