Я пытался установить Addict, поэтому я добавил mix.ex последнюю версию (как в Hex):Ошибка при установке Addict - конфликтующие требования к Ecto
{:addict, ">= 0.1.0"}
Затем я запустить reps.get микс и получил ошибку:
Глядя вверх альтернатив для противоречивых требований на экто
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
Каков наилучший способ преодолеть это?
Еще раз спасибо. Я добавил {: ecto, "> = 1.0.0", переопределить: true} в mix.exs, и хотя ошибка была с mix.lock, она решила его. Какова роль mix.lock? Кроме того, можете ли вы быть достаточно любезными, чтобы объяснить, в чем разница между оператором ~> и> =? –
Файл 'mix.lock' предназначен для блокировки зависимостей. Это означает, что если вы создаете проект, и я его клонирую, полученные мной зависимости будут теми же, что у вас есть. Он будет хранить точные номера версий вместо «ограничений версии», которые вы укажете в 'mix.exs' - вы не должны изменять' mix.lock' вручную. Вероятно, вы должны использовать '~>' вместо '> =' Различия объясняются в http://stackoverflow.com/questions/4292905/what-is-the-difference-between-and-when-specifying-rubygem-in -gemfile – Gazler
Спасибо, Газлер. Кристально чистый. –