Haskell 找不到模块“Control.Monad.Reader';
今天,当我试图用Geany编译代码时,我遇到了这个错误Haskell 找不到模块“Control.Monad.Reader';,haskell,Haskell,今天,当我试图用Geany编译代码时,我遇到了这个错误 Could not find module `Control.Monad.Reader': it was found in multiple packages: monads-fd-0.1.0.1 mtl-1.1.0.2 Compilation failed. 我对作家蒙纳德也有同样的看法;我想我应该删除其中一个包,但我不想破坏其他包,所以现在我该怎么办,昨天一切正常。我最近遇到了一个类似的问题,有人建议我在其中一个包的名称为“{x}
Could not find module `Control.Monad.Reader':
it was found in multiple packages: monads-fd-0.1.0.1 mtl-1.1.0.2
Compilation failed.
我对作家蒙纳德也有同样的看法;我想我应该删除其中一个包,但我不想破坏其他包,所以现在我该怎么办,昨天一切正常。我最近遇到了一个类似的问题,有人建议我在其中一个包的名称为“{x}”的地方运行。它在我的情况下工作。看起来您最近安装了
monads fd
,可能是您安装的其他东西的依赖项。monads fd
和mtl
包都包含模块Control.Monad.Reader
,因此GHC不知道在编译导入它的某些代码时使用哪个模块。您需要以某种方式解决歧义:
- 如果您直接使用GHC或GHCi
- 使用命令行上的
标志隐藏其中一个包,或者-hide package
- 默认情况下,使用
隐藏包。如果包安装在您的主目录中(某些平台上的默认目录),则可能需要使用ghc pkg hide
ghc pkg--user hide
- 使用命令行上的
- 您可以使用Cabal,并使用
文件中的.Cabal
字段准确地说出您所依赖的冲突包中的哪一个build dependens
阴谋集团的安装,这让我第一次看到“只需隐藏软件包”的建议时感到担心。顺便说一句,你能和我们在一起真是太好了,西蒙!我找到了,是我的!哦,等等,你不是这个意思。。。