This is a follow-up post to Copy method seems to ignore duplicatesStrategy
I’m still a bit confused about what is considered duplicates and what is not. For example, consider the following build.gradle file:
def f = file('build.gradle')
task example1 << {
copy {
from([f, f])
duplicatesStrategy = DuplicatesStrategy.FAIL
into temporaryDir
}
}
task example2 << {
copy {
from f
from f
duplicatesStrategy = DuplicatesStrategy.FAIL
into temporaryDir
}
}
task example3 << {
def copyOps = [[source: f, target: 'bar'], [source: f, target: 'bar']]
copy {
duplicatesStrategy = DuplicatesStrategy.FAIL
into temporaryDir
copyOps.each { op->
from op.source, {
rename {
op.target
}
}
}
}
}
gradle example1
reports a duplicate path whereas gradle example2
does not. gradle example3
again does.