android – Gradle Copy任务始终是最新的

我的gradle任务看起来像这样

task xml_file_to_vs_build(type: Copy) {
   outputs.upToDateWhen { false }
   doLast {
      outputs.upToDateWhen { false }
      println("copying strings.xml");
      from 'src/main/res/values'
      into '../vso_build'
      include 'strings.xml'
   }
}

任务始终是最新的.如果我把块放在配置阶段,即doLast之外,一切正常.但即使我执行了我不想要的gradlew任务,代码也会执行.我究竟做错了什么 ?

最佳答案 您应该按以下方式定义任务:

task xml_file_to_vs_build(type: Copy) {
   println("copying strings.xml")
   from 'src/main/res/values'
   into '../vso_build'
   include 'strings.xml'
}
点赞