haskell – cabal:如何添加文本文件作为构建依赖项
我使用一个简单的文本文件来生成一些使用Template
Haskell和runIO的代码.
... curdir <- runIO $getCurrentDirectory addDependentFile $curdir ++ "/spec.txt" bs <- runIO $BS.readFile "spec.txt" ... 与ghci一起使用时,一切都很好用.问题是cabal不知道我需要那个文件来构建,当我做cabal构建时我得到了这个. Exception when trying to run compile-time code: spec.txt: openFile: does not exist (No such file or directory) 解决方法
看看标志数据文件:
http://www.haskell.org/cabal/users-guide/developing-packages.html#accessing-data-files-from-package-code 顺便说一句,我推荐EclipseFP用于你的工作.它提供了编辑cabal文件的便捷方式. http://www.haskell.org/haskellwiki/Haskell_IDE#EclipseFP_plugin_for_Eclipse_IDE ================================================== =========================== 抱歉,误解了. 我认为cabal在这里并不重要. ghc在编译时运行openFile. 这意味着openFile仍然在另一个“运行时”运行以生成代码. “运行时”结果只是找不到文件 也许目前的目录并不像你想象的那样. 尝试使用setCurrentDirectory或show curdir并在getCurrentDirectory之前检查它 如果它不起作用.请显示完整的测试代码 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |