查看如下构建文件:
task busted(type: Copy){
from "${projectDir}/foo"
into projectDir
rename 'foo','bar'
expand(baz:'qux')
}
task alsoBusted(type: Copy){
from 'foo'
into projectDir
rename 'foo','bar'
expand(baz:'qux')
}
task moreBusted(type: Copy){
from projectDir
into projectDir
include 'foo'
rename 'foo','bar'
expand(baz:'qux')
}
task notBusted(type: Copy){
from 'foo'
into "${projectDir}/quux"
rename 'foo','bar'
expand(baz:'qux')
}
task surprisinglyNotBusted(type: Copy){
from 'quux'
into "${projectDir}/quux"
include 'foo'
rename 'foo','bar'
expand(baz:'qux')
}
似乎虽然可以将文件从同一目录复制到同一目录(任务惊奇NotBusted),但无法从projectDir复制到该目录,这会抛出一个很大的IOException:
org.gradle.api.UncheckedIOException: java.io.IOException: 该进程无法访问该文件,因为另一个进程已锁定该文件的一部分
我正在尝试使用 Copy 来做一些简单的模板,这可能不明智,但是这不起作用有什么原因吗?有没有更好的方法来解决它?
蒂亚……