Gradle根据您想要执行的任务构建任务图。
根据我想运行的任务(即jacocoTestReport或测试),我想应用一个插件(jacoco)。
但是,我不清楚如何才能获得实际的目标任务。
假设我运行这个命令:$ gradle test
或$ gradle jacocoTestReport
在build.gradle.kts
文件中,我有这样的东西:
if("jacocoTestReport" in gradle.targets){
apply<JacocoPlugin>()
tasks.named<JacocoReport>("jacocoTestReport") {
dependsOn("test")
reports {
xml.required.set(true)
}
}
}
这意味着,插件仅在目标是jacocoTestReport时应用。
为什么?因为jacoco java代理会使测试变慢,而且我并不总是需要它。
1条答案
按热度按时间fkaflof61#
您可以使用Gradke.getStartParameter API查询要执行的任务,并做出相应的React。
下面是一个简单的例子,仅在请求
jacocoTestReport
任务时应用jacoco
插件。