我的主项目目录x
中会有很多子模块,例如x/module1
,x/module2
......
我可以避免手动将每个模块添加到settings.gradle
吗?我可以以某种方式编写脚本来查找所有子目录并自动添加它们吗?
答案 0 :(得分:2)
正如 cricket_007 已经提到的那样,Gradle基于Groovy编程语言(就像Java一样,在JVM中执行),settings.gradle
文件只不过是一个Groovy脚本
每当您使用include 'project'
时,都会调用Settings
实例的include
方法,因此,为了您的目标,您只需创建一个迭代所有文件夹并调用{{{每个人都有1}}。
更多' groovyesque'方法是为include
类Groovy SDK extension提供的每个子目录使用闭包:
File
有多种方法可以解决您的问题,例如:由于file('.').eachDir { sub ->
include sub.name
}
方法接受项目路径字符串数组,因此您还可以首先聚合所有必需路径并将它们全部传递。只需熟悉Gradle文档并自行决定,哪种解决方案最适合您的情况。