我有一项任务,将一堆文件从一个位置复制到另一个位置。它看起来像:
task copyStuff (type: Copy) {
from tempDir
into buildDir
}
tempDir
和buildDir
只是字符串。我正在尝试指定任务的输入和输出,以避免在没有必要的情况下执行此操作,但特别是输出有问题。输入很简单:
task copyStuff (type: Copy) {
inputs.dir tempDir
from tempDir
into buildDir
}
但是在这种情况下如何指定输出? buildDir
可以有其他内容,而不仅仅是要复制的文件,所以我想我需要专门使用正在复制的文件指定outputs.files
。但是,我不确定最好的这样做的方法。
在任务之外,我应该循环遍历tempDir中的文件,并创建类似的文件列表,但是在buildDir中呢?有更简单的方法吗?
答案 0 :(得分:4)
您无需声明输入或输出,因为Copy
任务已为您执行此操作。与Gradle附带的其他任务相同。