apply plugin: 'war'
war {
...
}
从我的理解: 有一个gradle war plugin我获得可以从apply plugin: 'war'
线,即允许我使用通过war { ... }
这是war类型的声明的战争任务?Gradle任务vs插件vs任务类型?
apply plugin: 'war'
war {
...
}
从我的理解: 有一个gradle war plugin我获得可以从apply plugin: 'war'
线,即允许我使用通过war { ... }
这是war类型的声明的战争任务?Gradle任务vs插件vs任务类型?
如果您应用了Gradle War插件,则会自动创建名称为war
的任务。当您在构建脚本中引用war { ... }
时,您将在闭包的帮助下有效地配置war
任务实例。
war {
baseName = 'example'
}
做同样的事情
war.baseName = 'example'
封闭语法的好处是,你可以通过多条语句配置任务实例。它也变得更可读,看起来更像DSL。
名为war
的任务的实际类型是War。你总是可以通过命令行gradle help --task <task-name>
找出任务的类型。
您也可以获得有关变量的类型的一些信息在生成脚本:
task printType {
doLast {
println war
}
}
执行任务时会打印出以下内容:在此
$ gradle printType
:printType
task ':war'
“apply”下的“war”块没有定义任务,它只是插件使用的配置块。
要被一种高精度'war'特定示例通过_extension_定义。 – Opal
那么战争任务类型在什么时候起作用?该插件是否使用该任务类型来创建战争任务,然后使用配置模块进行扩展? –
我建议你下载Gradle发行版,并从顶部到底部阅读“用户指南”PDF。您需要了解任务所扮演的角色以及与其他实体的关系。 –