Apache Ant 란 무엇인가?

Java/Ant 2006. 9. 24. 20:54
Apache Ant는 자바 기반의 빌드 도구입니다. Unix 환경이나 기타 IDE 환경에서 사용하는 make와 같은 기능을 수행하는데 단지 make의 복잡함의 문제를 해결한 빌드 도구입니다. 현재 Ant는 자바 개발 환경에서 표준 빌드 도구로 자리잡았습니다.

각각의 개발환경 마다 빌드 도구가 있습니다. 유닉스 환경에서 사용하는 make, gnumake와 Visual Studio에서 사용하는 nmake 등등 수없이 많은 빌드 도구가 있지만 사실 플랫폼이 서로 상이 하더라도 동일한 빌드 환경을 제공하는 것은 없습니다. Ant 원저자는 플랫폼이 상이하더라도 동일한 빌드 환경을 제공하고 확장 가능한 형태의 빌드 도구를 개발하고자 했는데 그것이 Ant입니다.

Makefile은 전통적으로 그 복잡함에 개발자들이 사용하기 어려운 문제점을 가지고 있습니다. Unix 환경에서 Makefile을 작성해 보신 분들이라면 난해한 문법과 작성하기 힘든 어려움을 겪으셨을 것입니다.

Ant는 이런 문제점을 극복하기 위해서 만든 빌드 도구입니다. 쉘 기반의 커맨드 형태를 확장할 수 있는 모델로 되어 있고 Ant는 자바 클래스로 기능을 확장할 수도 있습니다. 또한 빌드 파일을 XML로 형태로 작성하도록 하여 계층적으로 보기 쉽도록 되어 있습니다. 독립적인 Task 형태를 객체로 작성하여 확장할 수도 있습니다. 또한 난해한 표기법도 없습니다. 이런 것이 Ant의 장점입니다. 현재 거의 대부분의 프로젝트가 Ant로 컴파일을 하고 있는 실정입니다. 또한 대부분의 IDE 도구가 현재 내부적으로 Ant를 사용하여 Build 파일을 작성하고 있습니다.

Ant에 대한 책은 많이 있지만 책을 볼 정도로 방대한 양이 아닙니다. 따라서 jakarta.apache.org 사이트를 통해서 간단히 사용방법만 학습하면 누구나 다 사용할 수 있습니다. 한글판으로 번역된 책이 있으므로 참고하시기 바랍니다.
: