忽略gradle中的子项目

忽略gradle中的子项目,gradle,Gradle,我有一个gradle多项目,我正试图在root build.gradle文件中创建一个任务 我需要在签出后运行该任务一次,或者每次我需要从项目所依赖的war生成jars文件时运行该任务。    问题是,当我运行gradlemytask时,gradle尝试编译文件setting.gradle中的所有项目,但由于我还没有JAR,所以失败了 是否有方法运行任务忽略setting.gradle 我已经尝试过gradle-c假设置。gradle我的任务,它工作得很完美,但我希望有更好的方法来完成它 tas

我有一个gradle多项目,我正试图在root build.gradle文件中创建一个任务 我需要在签出后运行该任务一次,或者每次我需要从项目所依赖的war生成jars文件时运行该任务。    问题是,当我运行gradlemytask时,gradle尝试编译文件setting.gradle中的所有项目,但由于我还没有JAR,所以失败了

是否有方法运行任务忽略setting.gradle

我已经尝试过gradle-c假设置。gradle我的任务,它工作得很完美,但我希望有更好的方法来完成它

task postCheckout << { 
   println "<<<<<< postCheckout" 
   delete fileTree(dir: "${rootProject.projectDir}/libs/fineos", include: ".") 
   copy{ 
      from zipTree("${rootProject.projectDir}/fineos-war/fineos6/fineos.war/") 
      include "WEB-INF/lib/*.jar" 
      eachFile { fcp-> fcp.path = fcp.name } 
      into "${rootProject.projectDir}/libs/fineos" includeEmptyDirs = false 
   } 
}

不应该忽略子项目。Gradle不会尝试编译所有项目,除非根项目的myTask任务依赖于它们,或者每个项目都有一个名为myTask的任务,该任务依赖于项目的编译输出。问题是,在子项目中,我对jar有依赖关系,myTask必须放在所有项目都要查找的文件夹中。。。MyTask只在根项目中…听起来好像构建有问题。可能myTask任务的声明不正确。Gradle只会在执行myTask.task postCheckout fcp.path=fcp.name}时需要编译子项目到${rootProject.projectDir}/libs/fineos includeEmptyDirs=false}请将其添加到原始问题中。它不属于评论。