Edoardo Luppi
08/17/2023, 12:38 PMclean
task, by adding my own directories.
Can I exclude sub-directories tho? Example:
my-dir-to-delete
file.txt
file2.bin
subfolder
I'd like to delete everything but subfolder
Edoardo Luppi
08/17/2023, 1:03 PMval cleanGenerated = project.task<Delete>("cleanGenerated") {
val rootDir = project.rootProject.layout.projectDirectory
val generatedDir = rootDir.dir("generated-packages/${project.name}")
generatedDir.asFileTree.visit {
if (!(isDirectory && name == "node_modules")) {
delete.add(file)
}
}
}
project.tasks.findByName("clean")?.dependsOn(cleanGenerated)
It doesn't look very good, but it worksAdam S
08/17/2023, 3:50 PMtasks.clean {
delete(
layout.projectDirectory
.dir("generated-packages/${project.name}")
.asFileTree
.matching {
include("**/node_modules/**")
}
)
}
CLOVIS
08/18/2023, 12:10 PMtasks.clean {
dependsOn(":cleanGenerateFiles")
}
Gradle automatically creates a task prefixed with clean
for all tasks, which cleans things generated by that task.
This is a much better solution, because if the paths change etc, the clean task will still work.Edoardo Luppi
08/18/2023, 12:18 PM