Gradle을 써보면 한 가지 고민이 생길 거예요. Project가 커질수록 설정이 점점 복잡해지고, Subproject가 많아질수록 관리가 더 힘들어지죠. 그런데 걱정 마세요! 사실 방법만 알면 어렵지 않아요. 오늘은 Gradle Project 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 관리, 왜 이렇게 좋은 거죠?
- 반복 작업 최소화: 한 번 설정하면 모든 Subproject가 공유해서 쓸 수 있어요.
- 일관성 유지: Version이나 Group 설정을 통일해서 관리 가능.
- 확장성 증가: Project가 커져도 설정이 복잡해지지 않아요.
- 유연한 설정 가능: 필요할 때 Subproject마다 개별 설정을 추가할 수 있어요.
마무리
Gradle의 Subproject Properties를 제대로 활용하면 Build 설정이 훨씬 깔끔해지고, 유지보수도 쉬워져요. 특히 subprojects
Method를 활용하면 공통 설정을 공유하면서도 필요한 부분만 개별적으로 조정할 수 있죠. 이런 식으로 최적화하면 개발 속도도 빨라지고, 팀원들과 협업할 때도 훨씬 효율적인 코드 관리를 할 수 있어요. 꼭 한 번 적용해 보세요! 직접 써보면 왜 다들 좋아하는지 알게 될 거예요.
'SW > Gradle' 카테고리의 다른 글
Gradle: Dependency Analysis, 쉽게 이해하기: Subproject와 Transitive Dependency 방법, 예제 (0) | 2025.02.21 |
---|---|
Gradle: 대규모 Project Build와 Dependency 관리 방법, 예제 (0) | 2025.02.20 |
Gradle: subproject 빌드 로직 한 번에 정리, 예제, 방법 (0) | 2025.02.18 |
Gradle: Multi-Module Project에서 Task 활용 방법, 예제 (0) | 2025.02.17 |
Gradle: 멀티 모듈 프로젝트 쉽게 배우기! (0) | 2025.02.16 |