Java2EE Framework/Ant

Ant 설명

본클라쓰 2010. 6. 12. 09:38

 

● Ant의 특징

 

 Ant는 make, gnumake, nmake, jam 등과 같은 빌드 툴입니다. Ant는 자바의 소스 코드를 컴파일해주고, 컴파일 된 클래스 파일을 배포본으로 변경해주고 소스코드로부터 API문서를 생성하는 작업을 한번의 배치 작업으로 처리할 수 있는 프로그램입니다. 자바 기반의 빌드툴로 make와 비슷한 기능을 제공하지만 다음과 같은 면에서 make와 같은 쉘 기반 빌드 툴과는 다릅니다.

  • Ant는 자바 기반이기 때문에 플랫폼에 독립적입니다.
  • 복잡한 쉘 명령어 대신 XML 기반의 설정 파일을 사용하여 설정하는 것이 복잡하지 않습니다.
  • 미리 정의한 태스크(임무)를 사용하여 매우 쉽고 빠르게 쉽게 배치 작업이 가능합니다.
  • 새로운 태스크의 추가를 통해 처리 가능한 배치 작업의 확장이 가능합니다.

 빌드툴은 유닉스나 리눅스 시스템에서 소스 파일을 컴파일해 설치해 본 사람은 쉽게 이해할 수 있습니다. 소스파일을 컴파일(make)하기 전에 makefile하여 컴파일된 파일들이 설치되어야 할 위치나 기타 설정을 지정한 후 make 명령어를 사용하여 컴파일해 설치하는 것을 알 것입니다.

 

 ant 도 이러한 빌드 툴입니다. 하지만 makefile을 사용하여 makefile 명령어를 통해 설정하는 것은 조금 복잡하고 어렵습니다. 설정이 올바르지 않다면 동작하지 않을 수도 있고 설정하는 방법을 잘 모른다면 makefile을 사용할 수 없다는 문제점도 있습니다. ant는 XML 설정 파일을 사용하므로 설정 부분에서 다릅니다.

 

 

● 쉡 스크립트와 Ant 설정파일을 통한 빌드의 차이점

 

 쉡 스크립트를 기반으로 할 경우 몇몇의 강력한 표현기능을 사용할 수 있다는 장점이 있지만 Ant는 그러한 표현기능 대신 간단한 XML기반의 설정 파일을 사용하여 미리 정의된 빌드인 태스크를 설정함으로써 매우 간단하고 쉽게 배치 작업을 진행할 수 있습니다. 태스크란 Ant를 통해 처리하고자 하는 작업을 나타내는 것으로 파일을 복사하거나, 소스 코드를 컴파일하거나, 자바 API 문서를 생성해주는 등 다양한 태스크를 미리 정의할 수 있습니다.

 

 

● Ant의 필요성

 

 Ant는 이클립스를 사용하고, 배포는 War 파일 형태로 배포한다면 별로 필요없는 빌드 툴일 수 있습니다. 이클립스에서 소스코드의 위치나 컴파일된 실행파일의 위치도 지정할 수 있기 때문입니다. 그리고 컴파일을 동시에 진행하기 때문에 이클립스를 사용하여 배포하는 형태에서는 필요없는 기능일지 모르지만, 유닉스나 리눅스 환경에서 직접 코드를 수정하거나 작성하여 컴파일하고 배포하는 과정을 거쳐야 한다면 Ant는 좋은 빌드 툴이 될 수 있습니다. 따라서 해당 경우가 발생한다면 Ant를 배우는 것이 좋습니다.

 

'Java2EE Framework > Ant' 카테고리의 다른 글

Ant 다운로드 및 설치 방법  (0) 2011.04.26