diff --git a/build.gradle.kts b/build.gradle.kts index 44eaa29..7ff2552 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -5,17 +5,17 @@ buildscript { mavenCentral() } dependencies { - classpath("com.h2database:h2:1.4.200") + classpath(libs.jdbc.h2) } } plugins { id("application") - id("com.diffplug.spotless") version "7.0.3" - id("org.domaframework.doma.codegen") version "3.0.0" - id("org.domaframework.doma.compile") version "3.0.1" - kotlin("jvm") version "2.1.20" - kotlin("kapt") version "2.1.20" + alias(libs.plugins.spotless) + alias(libs.plugins.doma.codegen) + alias(libs.plugins.doma.compile) + alias(libs.plugins.kotlin.jvm) + alias(libs.plugins.kotlin.kapt) } kotlin { @@ -28,17 +28,16 @@ application { } dependencies { - val domaVersion: String by project - kapt("org.seasar.doma:doma-processor:$domaVersion") - implementation("org.seasar.doma:doma-kotlin:$domaVersion") - implementation("org.seasar.doma:doma-slf4j:$domaVersion") - runtimeOnly("ch.qos.logback:logback-classic:1.5.18") - runtimeOnly("com.h2database:h2:1.4.200") + kapt(libs.doma.processor) + implementation(libs.doma.kotlin) + implementation(libs.doma.slf4j) + runtimeOnly(libs.logback.classic) + runtimeOnly(libs.jdbc.h2) // Use JUnit BOM for version management - testImplementation(platform("org.junit:junit-bom:5.12.2")) - testImplementation("org.junit.jupiter:junit-jupiter-api") - testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine") - testRuntimeOnly("org.junit.platform:junit-platform-launcher") + testImplementation(platform(libs.junit.bom)) + testImplementation(libs.junit.jupiter.api) + testRuntimeOnly(libs.junit.jupiter.engine) + testRuntimeOnly(libs.junit.platform.launcher) } repositories { @@ -49,7 +48,7 @@ repositories { spotless { kotlin { - ktlint("1.1.1") + ktlint(libs.versions.ktlint.get()) trimTrailingWhitespace() endWithNewline() } diff --git a/gradle.properties b/gradle.properties index 5664759..78012b1 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,3 @@ -domaVersion=3.7.0 kapt.incremental.apt=true kapt.use.worker.api=true kapt.include.compile.classpath=false diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml new file mode 100644 index 0000000..d892825 --- /dev/null +++ b/gradle/libs.versions.toml @@ -0,0 +1,30 @@ +[versions] +doma = "3.7.0" +kotlin = "2.1.20" +junit = "5.12.2" +spotless = "7.0.3" +doma-codegen = "3.0.0" +doma-compile = "3.0.1" +h2 = "1.4.200" +logback = "1.5.18" +ktlint = "1.1.1" + +[libraries] +doma-processor = { module = "org.seasar.doma:doma-processor", version.ref = "doma" } +doma-kotlin = { module = "org.seasar.doma:doma-kotlin", version.ref = "doma" } +doma-slf4j = { module = "org.seasar.doma:doma-slf4j", version.ref = "doma" } + +logback-classic = { module = "ch.qos.logback:logback-classic", version.ref = "logback" } +jdbc-h2 = { module = "com.h2database:h2", version.ref = "h2" } + +junit-bom = { module = "org.junit:junit-bom", version.ref = "junit" } +junit-jupiter-api = { module = "org.junit.jupiter:junit-jupiter-api" } +junit-jupiter-engine = { module = "org.junit.jupiter:junit-jupiter-engine" } +junit-platform-launcher = { module = "org.junit.platform:junit-platform-launcher" } + +[plugins] +kotlin-jvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } +kotlin-kapt = { id = "org.jetbrains.kotlin.kapt", version.ref = "kotlin" } +spotless = { id = "com.diffplug.spotless", version.ref = "spotless" } +doma-codegen = { id = "org.domaframework.doma.codegen", version.ref = "doma-codegen" } +doma-compile = { id = "org.domaframework.doma.compile", version.ref = "doma-compile" }