아빠는 개발자

[Aqqle] setting.gradle 본문

Aqqle/Project structure

[Aqqle] setting.gradle

father6019 2024. 12. 29. 09:49
728x90
반응형

어떻게 보면 별거 없을 것 같은 파일인데 그렇다보니 매번 복붙하게 됨. 그렇다면 다른 구로조 확장 할 수 있는 방법은?

 

Aqqle 의 setting.gradle 은 아래와 같이 되어있다. 

rootProject.name = 'aqqle'
include 'base','common', 'indexer', 'extract', 'api', 'crawler', 'manage', 'web', 'producer', 'consumer'

 

하위 프로젝트 구조

  • 현재 include에 나열된 하위 프로젝트들은 잘 나뉘어 있습니다. 하지만, 하위 프로젝트 디렉토리 구조가 일관성을 유지하고 있는지 확인해보세요.
    • 예: base, common, indexer 등은 모두 프로젝트 루트에 있어야 합니다.
  • 하위 프로젝트 경로를 명시해야 하는 경우(루트가 아닌 디렉토리에 있다면), 경로를 아래처럼 지정할 수 있습니다
include 'subdir:base', 'subdir:common'

의존성 관리

  • 하위 프로젝트 간 의존성이 많다면, 의존성 충돌을 방지하기 위해 settings.gradle에서 관련 규칙을 정의하거나, build.gradle에서 공통 의존성을 정리하는 방법을 고려하세요.

프로젝트 그룹 설정

  • 각 프로젝트에 공통된 그룹을 지정하려면 settings.gradle 파일에 다음을 추가할 수 있습니다.
rootProject.children.each {
    it.projectDir = new File(settingsDir, it.name)
    it.group = 'com.example.aqqle'
}

플러그인 적용 (Optional)

  • Gradle 7.0 이상을 사용하고 있다면, 플러그인을 settings.gradle에서도 적용할 수 있습니다. 
pluginManagement {
    repositories {
        gradlePluginPortal()
        mavenCentral()
    }
}
728x90
반응형