문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
|
gradle:buildlifecycle [2012/10/08 17:52] kwon37xi [빌드 스크립트 라이프사이클에 반응하기] |
gradle:buildlifecycle [2014/08/29 14:40] (현재) kwon37xi [프로젝트 평가] |
||
|---|---|---|---|
| 줄 146: | 줄 146: | ||
| [[http:// | [[http:// | ||
| + | * 최상위 '' | ||
| + | project(': | ||
| + | // .... | ||
| + | } | ||
| + | </ | ||
| + | ==== 태스크 생성 ==== | ||
| + | * 프로젝트에 태스크가 추가된 직후에 알림을 받을 수 있다. 기본값을 설정하거나 태스크가 빌드에 노출되기전에 행위를 추가하고자 할 때 사용한다. | ||
| + | * 각 태스크가 생성된 뒤에 '' | ||
| + | tasks.whenTaskAdded { task -> | ||
| + | task.srcDir = ' | ||
| + | } | ||
| + | |||
| + | task a | ||
| + | |||
| + | println " | ||
| + | </ | ||
| + | * 실행하면 < | ||
| + | > gradle -q a | ||
| + | source dir is src/ | ||
| + | </ | ||
| + | |||
| + | [[http:// | ||
| + | |||
| + | ==== 태스크 실행 그래프가 정해진 뒤에 ==== | ||
| + | * 실행할 태스크에 '' | ||
| + | task distribution << { | ||
| + | println "We build the zip with version=$version" | ||
| + | } | ||
| + | |||
| + | task release(dependsOn: | ||
| + | println 'We release now' | ||
| + | } | ||
| + | |||
| + | gradle.taskGraph.whenReady {taskGraph -> | ||
| + | if (taskGraph.hasTask(release)) { | ||
| + | version = ' | ||
| + | } else { | ||
| + | version = ' | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | '' | ||
| + | |||
| + | ==== 태스크 실행 ==== | ||
| + | 어떤 태스크이든 실행 직전과 직후에 알림을 받을 수 있다. | ||
| + | |||
| + | * 태스크 실행과 종료를 로그로 남기는 '' | ||
| + | task ok | ||
| + | |||
| + | task broken(dependsOn: | ||
| + | throw new RuntimeException(' | ||
| + | } | ||
| + | |||
| + | gradle.taskGraph.beforeTask { Task task -> | ||
| + | println " | ||
| + | } | ||
| + | |||
| + | gradle.taskGraph.afterTask { Task task, TaskState state -> | ||
| + | if (state.failure) { | ||
| + | println " | ||
| + | } | ||
| + | else { | ||
| + | println " | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| + | * 실행하면 < | ||
| + | > gradle -q broken | ||
| + | executing task ': | ||
| + | done | ||
| + | executing task ': | ||
| + | FAILED | ||
| + | </ | ||
| + | |||
| + | [[http:// | ||