From 0691045ab075c070e4c6e641a51a4894f668aaca Mon Sep 17 00:00:00 2001 From: Hanbin Lee Date: Sun, 6 Nov 2022 02:27:39 +0900 Subject: [PATCH] =?UTF-8?q?[#21]=20modify:=20=EC=9D=98=EC=A1=B4=EC=84=B1?= =?UTF-8?q?=20=EB=B2=84=EC=A0=84=20=EA=B4=80=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - dependencies 버전 관리를 위한 관리 클래스 적용 - Version 클래스 따로 구성 --- build.gradle.kts | 38 +++++++++++++++-------------- buildSrc/build.gradle.kts | 8 +++--- buildSrc/src/main/kotlin/Plugins.kt | 25 ++++++++----------- buildSrc/src/main/kotlin/Version.kt | 14 +++++++++++ 4 files changed, 48 insertions(+), 37 deletions(-) create mode 100644 buildSrc/src/main/kotlin/Version.kt diff --git a/build.gradle.kts b/build.gradle.kts index 8705286..a54abf1 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -2,11 +2,11 @@ import org.jetbrains.kotlin.gradle.tasks.KotlinCompile import org.springframework.boot.gradle.tasks.bundling.BootJar plugins { - id(Plugins.Spring.BOOT).version(Plugins.Spring.BOOT_VERSION) - id(Plugins.Spring.DEPENDENCY_MANAGEMENT).version(Plugins.Spring.DEPENDENCY_MANAGEMENT_VERSION).apply(false) - kotlin(Plugins.Kotlin.JVM).version(Plugins.Kotlin.VERSION) - kotlin(Plugins.Kotlin.PLUGIN_SPRING).version(Plugins.Kotlin.VERSION).apply(false) - kotlin(Plugins.Kotlin.PLUGIN_JPA).version(Plugins.Kotlin.VERSION).apply(false) + id(Plugins.Spring.boot).version(Version.Spring.boot) + id(Plugins.Spring.dependencyManagement).version(Version.Spring.dependencyManagement).apply(false) + kotlin(Plugins.Kotlin.jvm).version(Version.kotlin) + kotlin(Plugins.Kotlin.pluginSpring).version(Version.kotlin).apply(false) + kotlin(Plugins.Kotlin.pluginJpa).version(Version.kotlin).apply(false) } val bootJar: BootJar by tasks @@ -14,7 +14,7 @@ bootJar.enabled = false allprojects { group = "io.beaniejoy.dongecafe" - version = "0.0.1-SNAPSHOT" + version = Version.projectVersion repositories { mavenCentral() @@ -23,20 +23,22 @@ allprojects { subprojects { apply { - plugin(Plugins.JAVA) - plugin(Plugins.Spring.DEPENDENCY_MANAGEMENT) - plugin(Plugins.Spring.BOOT) + plugin(Plugins.java) + plugin(Plugins.Spring.dependencyManagement) + plugin(Plugins.Spring.boot) - plugin(Plugins.Kotlin.KOTLIN) - plugin(Plugins.Kotlin.KOTLIN_SPRING) - plugin(Plugins.Kotlin.KOTLIN_JPA) + plugin(Plugins.Kotlin.kotlin) + plugin(Plugins.Kotlin.kotlinSpring) + plugin(Plugins.Kotlin.kotlinJpa) } + java.sourceCompatibility = JavaVersion.VERSION_17 + dependencies { // Spring Boot Project - implementation("${Plugins.Spring.BOOT}:spring-boot-starter-data-jpa") - implementation("${Plugins.Spring.BOOT}:spring-boot-starter-web") - implementation("${Plugins.Spring.BOOT}:spring-boot-starter-validation") + implementation("org.springframework.boot:spring-boot-starter-data-jpa") + implementation("org.springframework.boot:spring-boot-starter-web") + implementation("org.springframework.boot:spring-boot-starter-validation") implementation("org.springframework.boot:spring-boot-starter-security") implementation("com.fasterxml.jackson.module:jackson-module-kotlin") developmentOnly("org.springframework.boot:spring-boot-devtools") @@ -48,10 +50,10 @@ subprojects { // DB runtimeOnly("mysql:mysql-connector-java") // MySQL runtimeOnly("com.h2database:h2") // H2 - implementation("org.flywaydb:flyway-core:7.15.0") // flyway + implementation("org.flywaydb:flyway-core:${Version.Deps.flywayCore}") // flyway // Logging - implementation("io.github.microutils:kotlin-logging:2.1.21") + implementation("io.github.microutils:kotlin-logging:${Version.Deps.kotlinLogging}") // Test testImplementation("org.springframework.boot:spring-boot-starter-test") @@ -59,7 +61,7 @@ subprojects { } tasks.withType { - println("Configuring $name in project ${project.name}...") + println("### Configuring $name in project ${project.name} ###") kotlinOptions { freeCompilerArgs = listOf("-Xjsr305=strict") jvmTarget = JavaVersion.VERSION_17.toString() diff --git a/buildSrc/build.gradle.kts b/buildSrc/build.gradle.kts index f155244..876c922 100644 --- a/buildSrc/build.gradle.kts +++ b/buildSrc/build.gradle.kts @@ -1,7 +1,7 @@ +plugins { + `kotlin-dsl` +} + repositories { mavenCentral() } - -plugins { - `kotlin-dsl` -} \ No newline at end of file diff --git a/buildSrc/src/main/kotlin/Plugins.kt b/buildSrc/src/main/kotlin/Plugins.kt index 9a413a4..99841fa 100644 --- a/buildSrc/src/main/kotlin/Plugins.kt +++ b/buildSrc/src/main/kotlin/Plugins.kt @@ -1,23 +1,18 @@ object Plugins { + const val java = "java" + object Spring { - const val BOOT_VERSION = "2.7.0" - const val BOOT = "org.springframework.boot" - - const val DEPENDENCY_MANAGEMENT_VERSION = "1.0.11.RELEASE" - const val DEPENDENCY_MANAGEMENT = "io.spring.dependency-management" + const val boot = "org.springframework.boot" + const val dependencyManagement = "io.spring.dependency-management" } - const val JAVA = "java" - object Kotlin { - const val KOTLIN = "kotlin" - const val KOTLIN_SPRING = "kotlin-spring" - const val KOTLIN_JPA = "kotlin-jpa" + const val kotlin = "kotlin" + const val kotlinSpring = "kotlin-spring" + const val kotlinJpa = "kotlin-jpa" - const val VERSION = "1.6.21" - - const val JVM = "jvm" - const val PLUGIN_SPRING = "plugin.spring" - const val PLUGIN_JPA = "plugin.jpa" + const val jvm = "jvm" + const val pluginSpring = "plugin.spring" + const val pluginJpa = "plugin.jpa" } } \ No newline at end of file diff --git a/buildSrc/src/main/kotlin/Version.kt b/buildSrc/src/main/kotlin/Version.kt new file mode 100644 index 0000000..cac6a44 --- /dev/null +++ b/buildSrc/src/main/kotlin/Version.kt @@ -0,0 +1,14 @@ +object Version { + const val projectVersion = "0.0.1-SNAPSHOT" + const val kotlin = "1.6.21" + + object Spring { + const val boot = "2.7.0" + const val dependencyManagement = "1.0.11.RELEASE" + } + + object Deps { + const val flywayCore = "7.15.0" + const val kotlinLogging = "2.1.21" + } +} \ No newline at end of file