默认文件到主目录

Default file to the Home directory

如何在安装我的 cabal 包后使用我的默认值创建一个文件,也许到主目录?我将默认文件保存在源目录中。我的意思是,可以通过任何方式告诉 cabal 在完成后或开始时创建该文件。因为我想在以后执行我的应用程序时拥有它。

cabal 支持将与您的应用程序一起安装的数据文件的概念,它还提供了一个 API 可用于确定数据文件实际所在位置的方法。

在您的 cabal 文件中添加一个 data-files 节,例如:

data-files: file1.txt, img2.jpg

路径是相对于您的项目目录的。

然后在您的应用程序中使用此代码:

import Paths_project_name
...

foo = do path <- getDataFileName "file1.txt"
         ...
         img <- getDataFileName "img2.jpg"
         ...

这里_project_name_是cabal项目的名称。例如,如果您的 cabal 文件名为 Blather.cabal,那么您将导入 Paths_Blather.

此博客中提供了更多信息 post:

http://neilmitchell.blogspot.com/2008/02/adding-data-files-using-cabal.html