plugins { id "application"; } repositories { mavenCentral(); } dependencies { implementation group: 'org.knowm.xchart', name: 'xchart', version: '3.8.2'; } tasks.register("createMissingSourceDirs") { group = "Project"; description = "Create all of the missing source directories for this project."; doFirst { sourceSets.each { def sourceRoot -> sourceRoot.allSource.srcDirTrees.each { def sourceDir -> if(!sourceDir.dir.exists()) { println "Creating ${sourceDir}"; mkdir sourceDir.dir; } } } } } tasks.register("deleteEmptySourceDirs") { group = "Project"; description = "Delete empty source directories."; doFirst { sourceSets.each { def sourceRoot -> sourceRoot.allSource.srcDirTrees.each { def sourceDir -> if(sourceDir.dir.exists() && sourceDir.dir.isDirectory() && sourceDir.dir.list().length == 0) { println "Removing empty ${sourceDir}"; sourceDir.dir.delete(); } } } } }