我正在使用 Haddock(带堆栈)为我正在开发的软件套件生成文档。我想生成 Haddock 文档的 2 个变体;一种通常(例如,vanilla stack haddock),一种具有完全暴露的模块(例如,stack haddock --haddock-arguments "--show-all")。但是,我发现我需要stack clean在黑线鳕生成之间运行,否则我运行的第二个命令不会生成任何东西。我们想尽量避免这种情况stack clean(这导致需要重新编译整个软件套件)。
预期步骤(不起作用):
stack haddockstack haddock --haddock-arguments "--show-all"上述步骤的问题在于,第二个步骤stack haddock将默认使用已经构建的 haddock 文档,而忽略"--show-all"更改。我们可以通过添加一个stack clean中间运行来解决这个问题:
工作步骤:
stack haddockstack cleanstack haddock --haddock-arguments "--show-all"但是,添加此stack clean步骤会导致对第 4 步的整个软件套件进行额外的重新编译。无论如何,我是否可以绕过需要此步骤?我已经尝试$(stack path --local-install-root)/doc在第二个文档生成之前手动删除该文件夹,但是如果没有完全清理,这不起作用。
我的堆栈版本是Version 2.7.3, Git revision 7927a3aec32e2b2e5e4fb5be76d0d50eddcc197f x86_64 hpack-0.34.4.