我正在使用HXT关注本教程webScrapper。 我在这里使用Stack。
在为MaybeT添加依赖项时,它要求:
建议的操作:尝试将以下内容添加到/ Users / *** / Haskell Development / Scrapper / stack.yaml中的extra-deps: - MaybeT-0.1.2
现在这样做是为了在运行堆栈构建时得到这条消息:
在MaybeT-0.1.2的依赖项中: base-4.9.0.0必须匹配< 4.8(最新适用的是4.7.0.2) 因Scrapper-0.1.0.0而需要 - > MaybeT-0.1.2
作为Stack的新手,我无法在我的cabal文件中解决问题 依赖:
build-depends: base >= 4.7 && < 5
, hxt
, url
, HTTP
, MaybeT
在stack.yaml
中resolver: lts-7.12
extra-deps: [MaybeT-0.1.2]
我错过了什么?我该如何解决这个问题?
答案 0 :(得分:3)
针对您的具体问题的解决方案是从outdated MaybeT package中的变换器包提供的Control.Monad.Trans.Maybe
转换为MaybeT
转换器。
那就是说,请注意版本不匹配涉及 base 。如果您确实需要使用 MaybeT 包,则必须将堆栈解析器切换为lts-6.26
等快照,该快照使用 base-4.8 或更低版本(即GHC 7.10.3或以下)。 base 版本与GHC版本相关联,其他所有版本都依赖于 base ,因此没有简单的方法可以将 base 切换到旧版本,如果运气好的话可能还有其他套餐。