我有一个复合项目 gradle 配置,希望向所有子项目和根项目添加一个插件。阅读这里的文档似乎很容易:如果您有一个多项目构建,您可能希望将插件应用于构建中的一些或所有子项目,但不应用于根项目。 plugins {} 块的默认行为是立即解析并应用插件。但是,您可以使用 apply false 语法告诉 Gradle 不将插件应用于当前项目,然后在子项目块中使用 apply plugin:«plugin id»,或者在子项目构建脚本中使用 plugins {} 块。所以基本上文档说:对于只包括子项目,请应用
false
,不应用任何东西,则插件将应用于所有项目。
但是这对我不起作用,我必须在根项目build.gradle
中定义插件,然后在所有子项目中重新应用它,这是个 bug 吗?
allprojects { apply plugin: 'myplugin' }
。 - Danieleapply plugin:'java'
应用于任何项目时,插件都会被应用)。 - Danieleallprojects
块。 - Michel Feinstein