Understanding gradle processResources filter syntax
以下内容似乎是gradle中用于过滤资源文件子集的常见用法。我了解它的作用,但无法理解语法:
1 2 3 4 5 | processResources { filesMatching('foo/*.html') { filter(ReplaceTokens, tokens: [key: 'value']) } } |
我到目前为止了解:
-
processResources是Java插件的任务,其类型为Copy。
-
我通过调用以下方法来配置processResources任务:
AbstractCopyTask filesMatching(String pattern, Action super FileCopyDetails> action) -
该方法的第一个参数是模式字符串。我正在提供'foo / *。html'作为模式。
-
该方法的第二个参数是
Action 接口,它只有一个方法。我提供一个闭包作为接口的实现。
这是我迷路的地方。在封闭体内,我正在调用过滤方法。它从何而来?它也不来自隐式项目对象。而且,过滤器方法甚至不应用于任何文件对象。代币如何更换?而且,
我没有连接圆点,也不确定圆点是否处于毛刺或粗糙状态。我已经通过文档和博客进行了一段时间的研究,但没有走运。感谢您的帮助。谢谢。
您要查找的
令牌替换由来自Ant的
我可能建议您下载gradle源,将它们导入IDE并从