gpt4 book ai didi

haskell - 如何获取堆栈构建/安装以包含资源文件(配置、图像等)

转载 作者:行者123 更新时间:2023-12-04 14:55:09 24 4
gpt4 key购买 nike

在开始编写非平凡的haskell程序(大于单个文件)的一步之后,我遇到了不知道如何让堆栈识别.ini文件等的问题。它似乎不适合 .cabal 或 stack.yaml 文件中的任何位置。

澄清一下:运行堆栈构建/安装后,生成的 .exe 文件夹没有资源,因此程序当然会因一堆 IO 错误(找不到文件)而崩溃。

最佳答案

有两种选择。我假设您正在寻找的是 data files .为此,您将基本上:

  • 将相关文件添加到data-files您的 .cabal 中的字段文件以便在构建你的包时安装它们
  • 添加 Paths_package_name模块到您的other-modules在您的 .cabal文件(将 package_name 替换为您的软件包名称)
  • 导入 Paths_*需要的模块
  • 使用生成的getDataFileName :: FilePath -> IO FilePath获取所需数据文件的绝对路径的函数

  • 另一种方法是使用 Template Haskell 将数据文件内容嵌入到可执行文件本身中,例如使用 file-embed包裹。

    关于haskell - 如何获取堆栈构建/安装以包含资源文件(配置、图像等),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45390204/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com