Elixir依赖版本不匹配求助:earmark_parser与1.9.1兼容问题
解决Elixir依赖earmark_parser版本不匹配问题
定位依赖来源
:earmark_parser是项目的间接依赖,并非你直接在mix.exs中声明的。- 执行命令
mix deps.tree查看完整依赖树,能清晰看到:earmark_parser是被哪个上层依赖引入的。
修正方案
1. 强制指定兼容版本
在mix.exs的deps函数中手动添加:earmark_parser的兼容版本,并开启覆盖:
defp deps do [ # 保留你已有的其他依赖 {:earmark_parser, "~> 1.4", override: true} ] end
override: true会强制所有依赖使用你指定的这个兼容Elixir 1.9.1的版本,忽略间接依赖的版本要求。
2. 更新上层依赖
通过mix deps.tree找到引入:earmark_parser的上层依赖后,查看该依赖的历史版本,选择一个同时兼容Elixir 1.9.1且依赖兼容版earmark_parser的版本,在mix.exs中更新这个上层依赖的版本号。
3. 升级Elixir版本(可选)
如果课程学习没有严格的版本限制,升级Elixir到1.11+可以从根源解决这类兼容问题。Linux Mint下可使用asdf工具管理多版本Elixir,轻松切换版本。
内容的提问来源于stack exchange,提问作者Liberty Lover
相关产品推荐
相关产品推荐

