我有一个 gradle 脚本,我想将 3 个目录复制到另一个文件夹中。但我也必须排除目录。
这是我开始的树结构:
src > java > tms > common
src > java > tms > dla
src > java > tms > server
src > java > tms > javaserver > common
src > java > tms > javaserver > dock > transaction > local
src > java > tms > javaserver > dock > transaction > tcd
src > java > tms > javaserver > dock > transaction > files
我要复制的文件夹是:
src > java > tms > common
src > java > tms > javaserver > common
src > java > tms > transaction > local
src > java > tms > transaction > files
这是我正在使用的 Gradle 命令:
task copyTmsCoreSharedFiles(type: Copy) {
from ('src/java/com/fedex/ground/tms')
include '**/common/*'
include '**/javaserver/common/*'
include '**/javaserver/dock/transaction/*'
exclude '**/javaserver/dock/transaction/tcd*'
into rootProject.rootDir.getAbsolutePath() +"/target-ant"+"/tmscoreshared"
}
结果是创建了所有文件夹。
下的所有文件夹码头被包含在内。 (当我只选择 交易 文件夹时,为什么包括其他文件夹?)
排除 指令根本不起作用。
谢谢。
最佳答案
这应该有效:
ext.dest = project.file("target-ant/tmscoreshared")
task copyTmsCoreSharedFiles(type: Copy) {
includeEmptyDirs = false
from ('src/java/com/fedex/ground/tms')
exclude '**/dla/**'
exclude '**/server/**'
exclude '**/tcd/**'
outputs.dir(dest)
}
task clean {
doLast {
dest.delete()
}
}
您还可以找到演示 here .
关于gradle - 无法为 Gradle 复制任务排除目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52768723/