我正在使用gradle 4.9。
DoFirst()和doLast()不能使用复制类型执行。
<select id='testSelect2' name="test" multiple>
<option value='1'> sunday</option >
<option value='2'> monday</option>
<option value='3'> tuesday</option>
<option value='4'> wensday</option>
<option value='5'> thrusday</option>
<option value='6'>friday </option>
<option value='7'>saturday </option>
</select>
gralde myCopyExtension
注意弹跳
追加-----
task myCopyExtension(type : Copy){
from 'original'
into 'target'
File newFile = file('original/newFile.txt')
doFirst {
println 'write to file'
newFile.write('copy file', 'UTF-8')
}
doLast {
File copied = file('original/newFile_copied.txt')
if(newFile.renameTo(copied)){
println 'copy complete'
}else {
println 'copy failed'
}
}
}
分级myCopy
什么也没有输出。
T_T
答案 0 :(得分:0)
在任务执行之前,gradle将进行最新检查,以查看自上次运行以来任务的输入/输出是否已更改。因此,如果自上次执行gradle以来“原始”和“目标”文件夹未更改,则将跳过任务
此外,您不应对用作任务输入的文件进行突变,因为它会破坏最新的检查结果。
请参见https://docs.gradle.org/current/userguide/more_about_tasks.html#sec:up_to_date_checks