我有一个根级项目,其中包含约100个子项目。根项目的主要目标是将所有产生的jar收集到安装程序中。
在主项目中,我将子项目作为依赖项包含在内,然后像这样进行安装程序编译:
dependencies {
blahblah project(":subproject1")
}
task blah(type: Copy) {
from(configurations.blahblah)
into 'qwe'
}
//and so on
我了解jar工件是由jar
任务产生的,并且此任务不依赖于test
任务。我看到了Gradle首先生产安装程序(这很耗时)然后才运行测试的情况。这对我来说不是很可接受,因为我需要尽快失败以免浪费时间。
我能以某种方式解决这种情况吗?
谢谢。
答案 0 :(得分:0)
一种解决方案是在mustRunAfter
任务上创建buildInstaller
约束,以确保它将在所有子项目check
任务之后运行:
在安装程序子项目build.gradle
中:
gradle.projectsEvaluated {
rootProject.subprojects.each { Project subproj ->
if (subproj.name != project.name) {
buildInstaller.mustRunAfter subproj.getTasks().getByName('check')
}
}
}