위키득계정 ↗
기술

Apache Ant

Apache Ant기술
구현 언어
Java
빌드 정의
XML
실행 구성
프로젝트 타깃 태스크
확장 묶음
Antlib
Apache Ant는 빌드 파일에 정의한 타깃과 태스크를 실행하는 Java 기반 도구다. 타깃의 의존 관계를 해석하고 컴파일과 조립, 테스트 같은 작업을 연결하며 사용자 정의 태스크로 확장할 수 있다.

프로젝트와 타깃

빌드 파일의 프로젝트에는 실행할 타깃을 정의하고 각 타깃 안에 태스크를 담는다. 타깃이 다른 타깃에 의존하도록 설정해 실행 순서를 정한다. 타깃을 지정하지 않았을 때 사용할 기본 타깃도 정할 수 있다. 의존 관계의 순서와 각 작업이 실제로 할 일은 구분된다.

태스크와 속성

태스크는 컴파일이나 파일 처리처럼 실행할 코드 단위다. 속성으로 반복되는 문자열과 설정값을 공통화하고 태스크 인수에 참조할 수 있다. 내장 태스크 외에 직접 작성한 태스크와 타입을 Antlib로 묶어 필요한 처리 기능을 더한다.

유연한 빌드와 의존성 관리

Java 응용 빌드에 널리 쓰이지만 C와 C++ 등 다른 작업에도 사용할 수 있다. 특정 디렉터리 구조나 코딩 관례를 강제하는 방식은 아니다. 외부 의존성 관리가 필요하면 Apache Ivy와 조합할 수 있으며 빌드 실행 기능과 의존성 저장소 관리는 서로 다른 역할이다.

관련 문서

Rake / Maven / Gradle / Java / XML / 빌드 시스템