要摆脱buildDir
弃用,你可以使用buildDir
的替代方案buildDirs
。buildDirs
是一个集合,可以包含多个构建目录。
以下是一个示例解决方法:
plugins {
id 'java'
}
// 定义构建目录
ext {
buildDirs = [
'build',
'out'
]
}
// 配置构建目录
buildDirs.each { dir ->
tasks.matching { it.buildDir.name == dir }.each { task ->
task.buildDir = file("${rootProject.buildDir}/${task.name}")
}
}
在上面的示例中,我们首先定义了一个buildDirs
的集合,其中包含了多个构建目录。然后,我们使用each
循环遍历每个构建目录,并使用each
循环遍历与构建目录匹配的任务。在每个任务中,我们将buildDir
属性重新赋值为"${rootProject.buildDir}/${task.name}"
,以设置新的构建目录路径。
这样,你就可以摆脱buildDir
弃用,并使用buildDirs
来定义多个构建目录。