重新编译模块 Haskell - 冲突版本 - Haskell
Recompile module Haskell - Conflict versions - Haskell
我正在使用 scotty 和 cookie,scotty 使用文本 1.2.2.2 和 cookie 文本 1.2.2.1。我可以重新编译 cookie 以使用更新版本的文本吗?
有没有办法同时包含这两个版本(我基本上只需要将文本转换为字符串)。或者如何在沙盒中管理此版本冲突?
是的,您可以重新安装软件包以依赖于其他常见版本。为您的项目制作一个 cabal 文件并通过 cabal 库构建(使用 cabal-install 或 stack),cabal 将确保只安装一个满足 scotty 和 cookie 的文本版本。
如果您想更手动地解决问题,请考虑重新安装对文本版本有限制的 cookie。例如:
ghc-pkg unregister cookie
cabal install cookie --constraint='text == 1.2.2.2'
或者中间立场,您可以取消注册这两个包并同时安装它们,这样它们隐式地获得相同的依赖关系解析:
ghc-pkg unregister cookie
ghc-pkg unregister scotty
cabal install cookie scotty
请注意,注销过程可能会破坏其他软件包,因此可能需要一些手动过程。这就是为什么最好使用沙箱、cabal new-build 或类似工具的原因。
我正在使用 scotty 和 cookie,scotty 使用文本 1.2.2.2 和 cookie 文本 1.2.2.1。我可以重新编译 cookie 以使用更新版本的文本吗? 有没有办法同时包含这两个版本(我基本上只需要将文本转换为字符串)。或者如何在沙盒中管理此版本冲突?
是的,您可以重新安装软件包以依赖于其他常见版本。为您的项目制作一个 cabal 文件并通过 cabal 库构建(使用 cabal-install 或 stack),cabal 将确保只安装一个满足 scotty 和 cookie 的文本版本。
如果您想更手动地解决问题,请考虑重新安装对文本版本有限制的 cookie。例如:
ghc-pkg unregister cookie
cabal install cookie --constraint='text == 1.2.2.2'
或者中间立场,您可以取消注册这两个包并同时安装它们,这样它们隐式地获得相同的依赖关系解析:
ghc-pkg unregister cookie
ghc-pkg unregister scotty
cabal install cookie scotty
请注意,注销过程可能会破坏其他软件包,因此可能需要一些手动过程。这就是为什么最好使用沙箱、cabal new-build 或类似工具的原因。