我试图更好地了解使用gradle插件可以做些什么。我已经对https://docs.gradle.org/current/userguide/custom_plugins.html做了一些阅读,但是 我不觉得它回答了我的问题。
现在我们有几个项目使用ear-plugin内置到ear文件中。 但是,对于我们所有的耳朵项目,我们现在有一堆其他配置,我们目前在company_ear.gradle文件中 我们在ear-projects的build.gradle文件中应用。
我们company_ear.gradle的例子:
allprojects {
tasks.withType(JavaCompile) {
sourceCompatibility = "1.7"
targetCompatibility = "1.7"
}
}
apply plugin: 'ear'
ear {
appDirName 'application'
rename('([^-]*)(.*)(.war)', '$1$3')
rename('([^-]*)(.*)(.jar)', '$1$3')
}
task devDeploy (type: Copy, dependsOn: assemble) {
//code to do local deploy of ear
}
// More custom stuff that should apply to all ear-projects
所以我的问题是,是否可以将其移至自定义gradle插件,以便我可以执行"应用插件:company-ear"?我知道如何做" devDeploy"任务 在一个插件中但我无法理解如何修复allProjects,在自定义插件中应用插件:' ear'和ear-block。