【问题标题】:cabal could not find module snap.internal.http.server.exceptioncabal 找不到模块 snap.internal.http.server.exception
【发布时间】:2016-05-23 23:31:48
【问题描述】:

我有一个使用 Snap 的 Haskell 桌面应用程序。该应用程序已经构建多年,并且是我们现场解决方案的日常组成部分。几个月前,我升级到了一台新的开发机器,运行 Windows 10,GHC 版本为 7.10.3,cabal 库版本为 1.22.3.0,cabal-install 版本为 1.22.4.0。我已经安装了 snap-core 0.9.8.0 版和 snap-server 0.9.5.1 版。

当我尝试在此环境中构建我的应用程序时,它收到以下错误:

Could not find module `Snap.Internal.Http.Server.Exception'
Perhaps you meant
  Snap.Internal.Http.Server.Backend
  Snap.Internal.Http.Server.Config
  Snap.Internal.Http.Server.Date

我在 Hackage 中找不到这个模块。自从我上次构建此代码以来,Snap 是否发生了变化?请,任何建议将不胜感激。

戴夫

附:以下是 ghc-pkg list 命令的输出和此项目的 cabal 文件的链接。

http://zelda.designacourse.com/dave/ghc-pkg_list.txt http://zelda.designacourse.com/dave/PreviewWrapper.cabal

【问题讨论】:

  • 你能给我们一些关于正在运行的应用程序的更多信息吗?比如ghc-pkg listcabal sandbox hc-pkg list,另一种选择是使用堆栈 (docs.haskellstack.org/en/stable/README.html)
  • 在旧的应用程序中你使用哪个 cabal/ghc 版本
  • 上次成功构建时,我运行的是 2014 Haskell 平台。我不再拥有确切的版本,因为我必须先卸载它才能安装新版本。
  • 你有时间聊天吗?
  • 今后请不要在 cmets 中粘贴如此长的输出样本(或任何与答案相关的信息)。改为将其编辑到您的问题中。

标签: haskell cabal haskell-snap-framework


【解决方案1】:

在 epsilonhalbe 的帮助和感谢下,我们找到了解决此问题的方法。我仍然不知道为什么导入 Snap.Internal.Http.Server.Exception 开始从编译器抛出错误。但是,删除该导入并向变量添加类型声明现在允许代码构建而不会出错。即 catch ((_ :: IOException) -> return True)。

【讨论】:

    猜你喜欢
    • 2014-03-02
    • 2016-03-11
    • 1970-01-01
    • 2022-12-15
    • 1970-01-01
    • 1970-01-01
    • 2018-02-21
    • 2021-07-23
    相关资源
    最近更新 更多