From 4e60a78fbd1bac2c7913cc4dfaa3ab5fb3f679e0 Mon Sep 17 00:00:00 2001 From: Danil-Bodry Date: Thu, 7 May 2026 02:22:42 +0300 Subject: [PATCH] up build.gradle.kts --- build.gradle.kts | 49 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/build.gradle.kts b/build.gradle.kts index f127ffb..1d6f6e7 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,7 @@ import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar import org.gradle.api.tasks.testing.logging.TestLogEvent.* +import java.nio.file.Files +import java.nio.file.Paths plugins { java @@ -142,3 +144,50 @@ tasks.register("collectAllDependencies") { } } +tasks.register("countCodeLines") { + group = "project" + description = "Подсчитывает количество строк кода" + + doLast { + val extensions = listOf("java", "kts", "xml", "json", "yaml", "properties", "html", "css", "js", "ts", "vue", "sql") + val excludeDirs = listOf("build", "out", "gradle", ".idea", "dist", "package-lock") + + val counts = mutableMapOf() + + fileTree(".").forEach { file -> + val ext = file.extension + if (ext in extensions && excludeDirs.none { file.path.contains(it) }) { + try { + val lines = Files.readAllLines(Paths.get(file.path)) + .map { it.trim() } + .filter { it.isNotEmpty() && !it.startsWith("//") && !it.startsWith("#") && !it.startsWith("*") && !it.startsWith("