我的大脑现在可能被炸了(我已经连续3天在这个Shakefile上进行黑客攻击了(,但我只是不知道如何表达一个"单向";Shake中的依赖关系?
我正在构建(生成(数百个HTML文件,为了使它们正常工作,它们需要生成一个通用的CSS文件。如果我说。。。
"**.rst" %> out -> do
need [cssFile, templateFile]
-- compile RST => HTML
如果通用CSS文件发生更改,则会导致所有HTML文件被重新构建!
如何在shake
:中表达以下内容
- 如果生成了
x
,请确保也生成了y
- 但是,如果
y
发生更改,则不需要重新构建x
您可能正在从文档中查找orderOnly
:
定义仅限订单的依赖项,这些依赖项将始终在继续之前构建,但不是此操作的依赖项。对于定义您认为可能是真正依赖关系的生成依赖关系非常有用。如果它们是真正的依赖项,那么您应该在之后添加一个显式依赖项。
它与你想要的并不完全匹配(在规则继续之前,你并不真的需要构建它(,但它应该足够接近你想要的。