Pet*_*ahn 13 copy rename build gradle
复制时可以通过gradle改变树的结构吗?
原版的
期望
我不确定在哪里创建闭包并覆盖复制树逻辑
我想做gra's相当于ant的globmapper功能
<property name="from.dir" location=".."/>
<property name="to.dir" location="dbutil"/>
<copy>
<fileset dir="${from.dir}" ... />
<globmapper from="${from.dir}/*/db" to="${to.dir}"/>
</copy>
Run Code Online (Sandbox Code Playgroud)
谢谢
彼得
Pet*_*ahn 21
更改文件名时,重命名似乎是一种好方法.更改路径时,您可以覆盖eachFile并修改目标路径.
这非常有效.
copy {
from("${sourceDir}") {
include 'modules/**/**'
}
into(destDir)
eachFile {details ->
// Top Level Modules
def targetPath = rawPathToModulesPath(details.path)
details.path = targetPath
}
}
....
def rawPathToModulesPath(def path) {
// Standard case modules/name/src -> module-name/src
def modified=path.replaceAll('modules/([^/]+)/.*src/(java/)?(.*)', {"module-${it[1]}/src/${it[3]}"})
return modified
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8409 次 |
最近记录: |