我维护通过 usingConfigFile
读取的每个项目的小型配置文件。我希望能够覆盖命令行上的任何这些设置。似乎使用 shakeArgsWith
(而不是 shakeArgs
)是第一步,但我没有看到一种明显的方法将其连接到 生成的值>获取配置
。是否有执行此操作的标准方法?
最佳答案
没有标准方法,但我知道几个较大的构建系统已经发明了一些东西。 shakeArgsWith
、readConfigFile
和 usingConfig
的组合应该可以做到这一点。像(未经测试)的东西:
main = shakeArgsWith shakeOptions [] $ \_ args -> return $ Just $ do
file <- readConfigFile "myfile.cfg"
usingConfig $ Map.union (argsToSettings args) file
myNormalRules
其中 argsToSettings
是一些解析参数并将其转换为设置的函数 - 例如在第一个 =
符号或类似符号上中断。
关于shake-build-system - 如何在命令行上覆盖 Shake 配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38670777/