【Gradle】关于在多模块(子模块)项目里添加gradle插件

博客介绍了Gradle多项目构建时插件应用的相关内容。在多模块项目build中,通常需将插件应用到子项目而非root或master项目。使用plugins{}模块会默认立刻解析和应用插件,可通过apply false语法阻止插件在当前模块运行,还给出了示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

出处gradle doc 5.4.1

If you have a multi-project build, you probably want to apply plugins to some or all of the subprojects in your build, but not to the root or master project. The default behavior of the plugins {} block is to immediately resolve and apply the plugins. But, you can use the apply false syntax to tell Gradle not to apply the plugin to the current project and then use apply plugin: «plugin id» in the subprojects block or use the plugins {} block in sub projects build scripts

如里你有一个多模块项目build, 你可能需要将应用插件到一些或所有build中的子项目, 而不是 root 或 master 项目. 使用plugins{}模块会默认立刻resolve以及apply这些插件。但是,你可以使用 apply false 语法来阻止插件在当前模块里运行,然后运用 apply plugin: 《plugin id》在subproject 块里或直接在子模块里使用plugins{}块

示例:

settings.gradle

include 'helloA'
include 'helloB'
include 'goodbyeC'

build.gradle

plugins {
    id 'org.gradle.sample.hello' version '1.0.0' apply false
    id 'org.gradle.sample.goodbye' version '1.0.0' apply false
}

subprojects {
    if (name.startsWith('hello')) {
        apply plugin: 'org.gradle.sample.hello'
    }
}

也可以 goodbyeC/build.gradle 

plugins {
    id 'org.gradle.sample.goodbye'
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值