安装 Addict 时出错 - 与 Ecto 的要求冲突
Error installing Addict - conflicting requirements on Ecto
我正在尝试安装 Addict,所以我将其最新版本(如十六进制)添加到 mix.ex:
{:addict, ">= 0.1.0"}
然后,我 运行 混合 reps.get 并得到一个错误:
为 ecto 上的冲突需求寻找替代方案
From mix.lock: 1.0.0
From addict v0.1.0: ~> 0.9
** (Mix) Hex dependency resolution failed, relax the version requirements or unlock dependencies
我曾尝试在 mix.lock 中做到这一点,但无法克服,因为出现了此错误:
(Mix) Unknown package version ecto v0.0.9 in lockfile
克服这个问题的最佳方法是什么?
您可以设置依赖项以使用 override
标志覆盖:
defp deps do
...
{:ecto, "~> 1.0.0", override: true},
{:addict, "~> 0.1.0"},
...
end
来自docs:
:override - if set to true the dependency will override any other definitions of itself by other dependencies
这意味着即使 addict
将版本设置为 0.9.0
- 仍将使用 1.0.0
版本。如果 addict 在 Ecto 中使用现在已弃用的函数,这可能会导致问题。
我正在尝试安装 Addict,所以我将其最新版本(如十六进制)添加到 mix.ex:
{:addict, ">= 0.1.0"}
然后,我 运行 混合 reps.get 并得到一个错误:
为 ecto 上的冲突需求寻找替代方案
From mix.lock: 1.0.0
From addict v0.1.0: ~> 0.9
** (Mix) Hex dependency resolution failed, relax the version requirements or unlock dependencies
我曾尝试在 mix.lock 中做到这一点,但无法克服,因为出现了此错误:
(Mix) Unknown package version ecto v0.0.9 in lockfile
克服这个问题的最佳方法是什么?
您可以设置依赖项以使用 override
标志覆盖:
defp deps do
...
{:ecto, "~> 1.0.0", override: true},
{:addict, "~> 0.1.0"},
...
end
来自docs:
:override - if set to true the dependency will override any other definitions of itself by other dependencies
这意味着即使 addict
将版本设置为 0.9.0
- 仍将使用 1.0.0
版本。如果 addict 在 Ecto 中使用现在已弃用的函数,这可能会导致问题。