Haskell Network.Wai.Middleware上的类型不匹配

Haskell Network.Wai.Middleware上的类型不匹配,haskell,Haskell,我正试图跟随斯考蒂提供静态文件。所以我有一个小脚本: {-# LANGUAGE OverloadedStrings #-} import Web.Scotty import Network.Wai.Middleware.Static import Data.Monoid (mconcat) main = scotty 3000 $ do middleware $ staticPolicy (noDots >-> addBase "static") get "/:word

我正试图跟随斯考蒂提供静态文件。所以我有一个小脚本:

{-# LANGUAGE OverloadedStrings #-}

import Web.Scotty
import Network.Wai.Middleware.Static

import Data.Monoid (mconcat)

main = scotty 3000 $ do
  middleware $ staticPolicy (noDots >-> addBase "static")
  get "/:word" $ do
    beam <- param "word"
    html $ mconcat ["<h1>Scotty, ", beam, " me up!</h1>"]
现在我不明白如何解释
wai-1.4.0.1:Network.wai.Middleware
vs
Network.wai.Middleware
。这是版本问题吗?我尝试检查已安装的库,但没有发现任何冲突

我应该检查什么来解决这个问题

编辑

运行
ghc pkg list wai
可以得到:

C:\perso\prog\haskell\orgmode\orgmodeserver\src\hs>ghc-pkg list wai
WARNING: there are broken packages.  Run 'ghc-pkg check' for more details.
C:/Program Files (x86)/Haskell Platform/2013.2.0.0\lib\package.conf.d:

C:\Users\sberg\AppData\Roaming\ghc\i386-mingw32-7.6.3\package.conf.d:
    wai-1.4.0.1
    wai-2.0.0
正在运行ghc pkg检查(跳过一系列警告):


修复此问题的方法可能有十几种,但最简单的解决方案是注销所有损坏的软件包,注销wai的两个版本,然后重新安装所有软件包,确保您没有安装两个版本的wai。使用标志--dry run确保cabal install没有安装旧版本。如果它决定需要1.4而不能使用2.0,那么您可能必须使用某些软件包的旧版本

这看起来确实是版本问题。ghc pkg列表wai的输出是什么?@user2407038请参见我的编辑。这是否意味着我安装了2个wai lib?准确地说。修复此问题的方法可能有十几种,但最简单的解决方案是注销所有损坏的软件包,注销两个版本的
wai
,然后重新安装所有软件包,确保您没有安装两个版本的
wai
。使用标志
--dry run
确保
cabal install
未安装旧版本。如果它决定需要1.4而不能使用2.0,您可能必须使用某些软件包的旧版本。@user2407038谢谢。我现在正在尝试。@user2407038我工作过。我不确定我是否打破了其他一些东西,但我今天学到了一些新东西。如果你愿意在回答中复制/忽略你的评论,我将接受。否则我自己写。
C:\perso\prog\haskell\orgmode\orgmodeserver\src\hs>ghc-pkg list wai
WARNING: there are broken packages.  Run 'ghc-pkg check' for more details.
C:/Program Files (x86)/Haskell Platform/2013.2.0.0\lib\package.conf.d:

C:\Users\sberg\AppData\Roaming\ghc\i386-mingw32-7.6.3\package.conf.d:
    wai-1.4.0.1
    wai-2.0.0
The following packages are broken, either because they have a problem
listed above, or because they depend on a broken package.
scion-browser-0.2.17
miamtime-0.0.0
TestYes-0.0.0
yesod-platform-1.2.2
yesod-1.2.1.1
yesod-auth-1.2.0.2
yesod-form-1.3.0.1