2014-07-24 3 views
3

나는 멀티 프로젝트 빌드를 gradle로 가지고있다.그룹화하고 gradle 다중 프로젝트 빌드에서 의존성 재사용

project(":pr-common") { 
    dependencies { 
    compile "joda-time:joda-time:2.3" 
    compile "org.joda:joda-convert:1.6" 
    } 
} 

project(":pr-domain") { 
    dependencies { 
    compile "joda-time:joda-time:2.3" 
    compile "org.joda:joda-convert:1.6" 
    } 
} 

어떻게 든 그룹이 종속성을 다시 사용할 수 있습니다 : build.gradle에서 나는 두 개 이상의 프로젝트 같은 일부 종속성이? 나는 다음과 같은 것을 원한다.

def joda = [ 
    compile "joda-time:joda-time:2.3", 
    compile "org.joda:joda-convert:1.6" 
] 

project(":pr-common") { 
    dependencies { 
    joda 
    } 
} 

project(":pr-domain") { 
    dependencies { 
    joda 
    } 
} 

답변

1

제안한 방식으로 의존성을 재사용 할 수 없다. 대신 다음 코드를 사용할 수 있습니다.

build.gradle (루트 프로젝트)

subprojects.findAll { it.path.contains('pr') }.each { //whatever search condition 
    it.plugins.apply 'groovy' 

    it.dependencies { 
     compile 'com.google.inject:guice:3.0' 
     compile 'com.google.guava:guava:15.0' 
    } 
} 
관련 문제