根据Hackage上的doc,Data.Time.Format
曝光defaultTimeLocal
。
但是,当我尝试使用它时,它不会退出。
当我查看代码时,它似乎也没有公开(如果我从源代码生成文档,我就不会看到这个defaultTimeLocale
)。是因为它需要使用一些标志进行编译,或者hackage上的黑线鳕是错误的。
我在哪里可以获得TimeLocale
的实例?
我在OSX上使用time
版本1.5.0.1。
以下代码
import Data.Time.Format (defaultTimeLocale)
错误
Module ‘Data.Time.Format’ does not export ‘defaultTimeLocale’
实际上我使用的是版本1.4.2,但没有安装defaultTimeLocale
。
我升级到1.5.0.1 ...
我删除了我的沙箱,重建了一切。它现在正在工作。
答案 0 :(得分:3)
出于某种原因,cabal没有使用我认为它的版本(1.5),但是(1.4)可能来自haskell平台。 Uprading修复了问题。
答案 1 :(得分:1)
对于其他想要使用向后兼容的time
依赖项编写库的人来说,您可以使用CPP编译指示和#if
来检查时间库的最低版本:< / p>
{-# Language CPP #-}
#if MIN_VERSION_time(1,5,0)
import Data.Time.Format (defaultTimeLocale)
#else
import System.Locale (defaultTimeLocale)
#endif