【发布时间】:2021-08-11 23:38:39
【问题描述】:
我的settings.gradle 有一个如下的包含语句:
include 'sub-module-1', 'sub-module-2', 'sub-module-3'
我可以从命令行参数中读取我想要包含的子模块的值吗?
【问题讨论】:
标签: gradle build.gradle multi-module
我的settings.gradle 有一个如下的包含语句:
include 'sub-module-1', 'sub-module-2', 'sub-module-3'
我可以从命令行参数中读取我想要包含的子模块的值吗?
【问题讨论】:
标签: gradle build.gradle multi-module
将子模块列表作为系统属性传递:
settings.gradle:
if (System.getProperties().submodules != null) {
include System.getProperties().submodules.split(',')
}
命令行:
./gradlew build -Dsubmodules=sub-module-1,sub-module-2,sub-module-3
请注意,您不能改用项目属性,因为settings.gradle 在创建项目对象之前执行。
记得在没有提供submodules 属性时处理案例 - 您可以引发异常或设置一些默认子模块集。
【讨论】: