SW/Gradle

Gradle: Properties 쉽게 정리하기 | Subproject 설정과 빌드 최적화

얇은생각 2025. 2. 19. 07:30
반응형

Gradle을 써보면 한 가지 고민이 생길 거예요. Project가 커질수록 설정이 점점 복잡해지고, Subproject가 많아질수록 관리가 더 힘들어지죠. 그런데 걱정 마세요! 사실 방법만 알면 어렵지 않아요. 오늘은 Gradle Project Properties를 깔끔하게 정리하는 방법과, Subproject에 적용하는 실용적인 팁을 알려드릴게요.

 

Gradle: Properties 쉽게 정리하기 ❘ Subproject 설정과 빌드 최적화

 

Gradle Properties가 뭐길래 중요할까요?

Gradle Properties가 대체 뭐냐고요? 쉽게 말하면 Project를 체계적으로 정리해 주는 설정값이에요. 몇 가지 중요한 Properties를 살펴볼게요:

  • Version Management: Project의 Version을 자동으로 지정할 수 있어요.
  • Group 설정: Package처럼 Project를 Group화해서 깔끔하게 관리할 수 있죠.
  • Dependency Sharing: 여러 Subproject가 같은 설정을 함께 사용할 수 있어요.

 

이걸 잘 활용하면 Project 설정이 한결 깔끔해지고, 매번 똑같은 걸 반복해서 작성할 필요가 없어요. 개발할 때 불필요한 작업을 줄이는 게 얼마나 중요한지, 직접 해보면 확실히 느낄 수 있을 거예요!

 

Subproject에 공통 Properties 적용하는 방법

Gradle에서는 Subproject에 공통 Properties를 쉽게 적용할 수 있어요. 예를 들어, 이렇게 설정하면?

allprojects {
    version = '1.0'
    group = 'com.bharath.gradle'
}

 

이제 모든 Subproject가 같은 Version과 Group을 자동으로 사용하게 돼요. 하지만 Root Project에는 적용하고 싶지 않다면, 이렇게 바꿀 수도 있어요:

subprojects {
    version = '1.0'
    group = 'com.bharath.gradle'
}

 

이렇게 하면 Root Project는 영향을 받지 않고, Subproject들만 설정을 따라가요. 깔끔하죠?

 

적용 확인하는 간단한 방법

설정이 잘 적용됐는지 확인하는 방법도 쉬워요. Gradle Build를 실행해 보세요:

gradle clean build

 

그리고 Subproject의 build/libs Folder를 열어보면, 이런 파일이 있을 거예요:

integration-1.0.jar

 

이렇게 나오면 성공이에요! 한 번 해보면 별로 어렵지 않다는 걸 느끼실 거예요.

 

특정 Subproject만 따로 설정하고 싶다면?

모든 Project가 같은 설정을 쓸 필요는 없어요. 예를 들어, Web Project는 Web Application이라 JAR 파일 대신 WAR 파일을 만들어야 할 수도 있겠죠? 그럴 땐 이렇게 개별 설정을 하면 돼요:

apply plugin: 'war'

repositories {
    jcenter()
}

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
}

 

이 설정을 적용하면 Web Project만:

  • JAR 대신 war Plugin을 사용해서 Web Application Packaging 가능
  • 별도의 Dependency List를 관리
  • 자신만의 Repository 설정을 가질 수 있음

 

각 Project의 특성에 맞게 Build 설정을 맞추는 게 가능하니까, 필요에 따라 적절히 조정하면 돼요!

 

Gradle Subproject 관리, 왜 이렇게 좋은 거죠?

  1. 반복 작업 최소화: 한 번 설정하면 모든 Subproject가 공유해서 쓸 수 있어요.
  2. 일관성 유지: Version이나 Group 설정을 통일해서 관리 가능.
  3. 확장성 증가: Project가 커져도 설정이 복잡해지지 않아요.
  4. 유연한 설정 가능: 필요할 때 Subproject마다 개별 설정을 추가할 수 있어요.

 

마무리

Gradle의 Subproject Properties를 제대로 활용하면 Build 설정이 훨씬 깔끔해지고, 유지보수도 쉬워져요. 특히 subprojects Method를 활용하면 공통 설정을 공유하면서도 필요한 부분만 개별적으로 조정할 수 있죠. 이런 식으로 최적화하면 개발 속도도 빨라지고, 팀원들과 협업할 때도 훨씬 효율적인 코드 관리를 할 수 있어요. 꼭 한 번 적용해 보세요! 직접 써보면 왜 다들 좋아하는지 알게 될 거예요.

반응형