Gradle 无法将文件从projectDir复制到projectDir。为什么?

Gradle 无法将文件从projectDir复制到projectDir。为什么?,gradle,Gradle,我不明白为什么我不能将文件复制到projectDir。此目录在执行期间是否被阻止?例如: 这项工作: task metadataFile(type: Copy) { from projectDir into 'aaa' // projectDir+"/aaa" include 'myfile.txt' rename 'myfile.txt', 'myfile.new.txt' } 但这不会(返回IOException:进程无法访问该文件,因为另一个进程已锁定该文

我不明白为什么我不能将文件复制到
projectDir
。此目录在执行期间是否被阻止?例如:

这项工作:

task metadataFile(type: Copy) {
    from projectDir
    into 'aaa' // projectDir+"/aaa"
    include 'myfile.txt'
    rename 'myfile.txt', 'myfile.new.txt'
}
但这不会(返回IOException:进程无法访问该文件,因为另一个进程已锁定该文件的一部分):


是否需要先将文件复制到临时目录,然后将其移动到
projectDir
ant.copy
可以代替gradle copy任务,但这不是解决方案。

如果“aaa”中的
表示
/projectDir/aaa
,则程序将projectDir视为根文件夹。因此,projectDir中的
不应该意味着
/projectDir/projectDir
projectDir
是指向build.gradle dir的预定义gradle变量。
task metadataFile(type: Copy) {
    from projectDir
    into projectDir
    include 'myfile.txt'
    rename 'myfile.txt', 'myfile.new.txt'
}