[작성자:] sp

  • 📌 Kotlin 버전 강제 적용 및 프로젝트 전역 의존성 규칙 설정

    ✅ 개요

    프로젝트 내 Kotlin 라이브러리의 버전을 1.9.23으로 강제 적용하고,
    모든 하위 프로젝트에 동일한 의존성 규칙을 적용해 일관된 환경을 유지하도록 설정했습니다.

    이 포스트에서는 왜 이런 설정이 필요한지, 그리고 어떻게 적용했는지를 정리합니다.


    🎯 왜 필요한가?

    1. 버전 충돌 방지

    모듈 간에 서로 다른 Kotlin 버전이 사용되면 컴파일 오류나 런타임 예외가 발생할 수 있습니다.

    2. 빌드 안정성 확보

    모든 모듈이 동일한 Kotlin 버전을 사용함으로써 예측 가능한 결과를 보장합니다.

    3. 일관된 개발 환경 유지

    개발자마다 사용하는 IDE나 Gradle 설정이 다르더라도, 동일한 의존성 버전이 유지됩니다.


    🔧 어떻게 적용했나?

    ✅ Kotlin 버전 강제 적용

    kotlinCopyEdit// settings.gradle.kts 또는 build.gradle.kts (root)
    pluginManagement {
        plugins {
            id("org.jetbrains.kotlin.jvm") version "1.9.23"
        }
    }
    

    또는 Gradle 전체에 명시적으로 지정:

    kotlinCopyEditbuildscript {
        dependencies {
            classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.23")
        }
    }
    

    ✅ 모든 프로젝트에 공통 의존성 규칙 적용

    kotlinCopyEdit// root project's build.gradle.kts
    subprojects {
        configurations.all {
            resolutionStrategy.eachDependency {
                if (requested.group == "org.jetbrains.kotlin") {
                    useVersion("1.9.23")
                    because("Force consistent Kotlin version across all modules")
                }
            }
        }
    }
    

    📝 정리

    • Kotlin 버전을 1.9.23으로 고정하여 일관된 환경 유지
    • resolutionStrategy.eachDependency를 통해 모든 프로젝트에 의존성 규칙을 전파
    • 하위 모듈 간 충돌 방지 및 빌드 실패 리스크 최소화

    📎 참고 링크