문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
|
gradle:multiproject [2012/10/11 11:44] kwon37xi [단위 테스트간의 의존성] |
gradle:multiproject [2022/07/06 10:20] (현재) kwon37xi [서브 프로젝트간 의존성] |
||
|---|---|---|---|
| 줄 2: | 줄 2: | ||
| * [[http:// | * [[http:// | ||
| * [[http:// | * [[http:// | ||
| + | |||
| + | ====== 최상위 프로젝트의 이름 ====== | ||
| + | '' | ||
| + | < | ||
| + | rootProject.name = ' | ||
| + | </ | ||
| ===== 멀티 프로젝트의 기본 ===== | ===== 멀티 프로젝트의 기본 ===== | ||
| 줄 36: | 줄 42: | ||
| } | } | ||
| // shared 서브 프로젝트에 의존하고 있다. | // shared 서브 프로젝트에 의존하고 있다. | ||
| + | </ | ||
| + | |||
| + | ==== build.gradle 대신 subproject 이름으로 gradle 파일 구성 ==== | ||
| + | * 멀티 모듈 프로젝트를 구성하면 지나치게 많은 '' | ||
| + | * 아래와 같이 '' | ||
| + | |||
| + | <code groovy> | ||
| + | rootProject.children.each {project -> | ||
| + | project.buildFileName = " | ||
| + | } | ||
| </ | </ | ||
| 줄 159: | 줄 175: | ||
| </ | </ | ||
| - | ==== 프로젝트 필터링 ==== | + | ==== 프로젝트 필터링 |
| '' | '' | ||
| + | |||
| + | === 명시하기 === | ||
| + | < | ||
| + | def projects = [project(' | ||
| + | |||
| + | // 특정 프로젝트들에 대한 설정.. | ||
| + | configure(projects) { | ||
| + | .... | ||
| + | } | ||
| + | </ | ||
| === 이름으로 필터링 === | === 이름으로 필터링 === | ||
| 줄 596: | 줄 622: | ||
| * 이 때문에 '' | * 이 때문에 '' | ||
| - | ===== 단위 테스트간의 의존성 ===== | + | ===== 멀티 프로젝트 |
| + | * 이제는 더이상 아래 방법을 사용하지 말고 [[gradle: | ||
| + | <note warning> | ||
| + | 아래 방법은 사용하지 말 것. | ||
| + | |||
| + | 테스트들 간의 의존성을 거는 것은 어쩔 수 없을때만한다. | ||
| + | |||
| + | 꼭 필요하다면 테스트를 위한 별도 모듈을 만들고 그에 대해 일반적인 의존을 하게 변경한다. | ||
| + | </ | ||
| + | |||
| + | 개인적으로 아래 방법보다는 공통 단위 테스트용 프로젝트를 만들고(예: | ||
| + | |||
| + | ---- | ||
| ProjectA와 ProjectB의 단위테스트가 존재하는데, | ProjectA와 ProjectB의 단위테스트가 존재하는데, | ||
| 단위 테스트는 프로젝트간 의존성에서 제외되기 때문이다. | 단위 테스트는 프로젝트간 의존성에서 제외되기 때문이다. | ||
| 줄 610: | 줄 649: | ||
| configurations { | configurations { | ||
| crosstest | crosstest | ||
| - | | + | |
| } | } | ||
| dependencies { | dependencies { | ||
| - | testCompile configurations.crosstest // testCompile이 crosstest에 의존하게 변경 | ||
| crosstest project(': | crosstest project(': | ||
| } | } | ||
| 줄 624: | 줄 662: | ||
| } | } | ||
| </ | </ | ||
| + | |||
| + | ===== 참조 ===== | ||
| + | * [[https:// | ||
| + | |||