为什么在将子文件夹添加为子项目时,gradle会自动将父文件夹包含为子项目

为什么在将子文件夹添加为子项目时,gradle会自动将父文件夹包含为子项目,gradle,Gradle,我有以下简单的设置: 文件结构 文件内容 格雷德尔酒店 格雷德尔先生 上面的任务hello将打印出所有子项目。我只希望有两个子项目:rest模型和rest资源。然而,我得到了三个:模块、rest模块和rest资源。下面是渐变输出: $ gradle hello Starting a Gradle Daemon (subsequent builds will be faster) > Task :hello modules rest-model rest-resource BUILD

我有以下简单的设置:

文件结构

文件内容

格雷德尔酒店

格雷德尔先生

上面的任务hello将打印出所有子项目。我只希望有两个子项目:rest模型和rest资源。然而,我得到了三个:模块、rest模块和rest资源。下面是渐变输出:

$ gradle hello
Starting a Gradle Daemon (subsequent builds will be faster)

> Task :hello
modules
rest-model
rest-resource


BUILD SUCCESSFUL in 2s
1 actionable task: 1 executed
那么,为什么gradle会自动将父文件夹模块包含为子项目?我可以防止吗?

使用,而不是:

def MODULES = 'modules'

file(MODULES).eachDir {
    include ":${MODULES}:${it.name}"
}
task hello {
    doLast {
        subprojects.each {
            println it.name
        }
    }
}
$ gradle hello
Starting a Gradle Daemon (subsequent builds will be faster)

> Task :hello
modules
rest-model
rest-resource


BUILD SUCCESSFUL in 2s
1 actionable task: 1 executed
def MODULES = 'modules'

file(MODULES).eachDir {
    includeFlat ":${MODULES}:${it.name}"
}