목록 보기
팀 레거시 개선 (1) 쏘카존 관리 시스템
백엔드

팀 레거시 개선 (1) 쏘카존 관리 시스템

쏘카
쏘카
2024년 2월 12일

두줄요약

그루비 DSL 기반 멀티모듈 Gradle 스크립트를 Kotlin DSL로 점진적으로 마이그레이션했습니다. 의존성·플러그인 관리 구조를 정리해 가독성과 관리 안정성을 높였습니다.

문제 상황

  • 그루비 DSL 기반의 복잡하고 비표준화된 멀티모듈 Gradle 빌드 스크립트
  • 신규 개발자의 프로젝트 구성 파악과 일관된 빌드 관리 부담

해결 방법

  • 루트 build.gradle부터 문자열·함수 호출·프로퍼티·플러그인 문법을 Kotlin DSL로 점진적 마이그레이션
  • gradle.properties로 공통 버전을 이동하고 Gradle BOM 및 Spring 관리 의존성으로 버전 명시 축소
  • pluginManagement의 해석 전략과 플러그인 마커 배포로 buildscript 블록 제거

선택 이유

  • Kotlin DSL의 자동완성과 컴파일 시점 문법 오류 확인
  • 생태계 관리 버전 활용을 통한 의존성 관리 지점 축소와 안정성 확보

주의할 점

  • buildscript와 plugins 블록에서 참조 가능한 프로퍼티 범위 차이
  • 마커 없는 사내 플러그인의 타입 안전 접근자 및 확장 블록 사용 제약
  • 생태계별 관리 의존성 버전의 지속적 확인 필요

다음 읽기

#Gradle 주제를 이어서 읽기

에셋팀 레거시 개선 (1) 쏘카존 관리 시스템

쏘카 존 관리 시스템의 레거시 그레이들 빌드를 코틀린 DSL로 마이그레이션한 과정을 정리했습니다. 점진적 전환으로 표준화와 유지보수성을 높이는 방법을 소개했습니다.

쏘카
쏘카
백엔드

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...