728x90

여러분은 자바를 쓰면서 빌드할때 문제가 있다고 생각한적이 있나?

아마 대부분은 빌드로 문제를 겪는일은 크게 없을 것이다. 물론 필자역시도 그러하였고.

아마 빌드시스템이 뭐야? 그런게 존재해? 이런 반응역시 많을 것이다.


그러나 프로그램이 조금 커지게 된다면 빌드시스템없이 수많은 자바프로그램들을 관리하기는 힘든 일이다.

여러분이 아직까지 그걸 못느낄 뿐. 컴퓨터에서는 항상 작은 작업과 큰 작업간의 괴리가 매우 크다.

조금만 프로젝트가 커져도 빌드 시스템없는 프로젝트는 한계점에 봉착하게된다.

사실 빌드 시스템이 없다는 말은 조금 맞지 않는 말이겠다. 이클립스도 일종의 빌드시스템이기 때문이다.

그렇기에 여러분들은 빌드시스템의 고마움을 못느끼고 산다. 최소한의 빌드는 이클립스가 해주기 때문이다.

그러나 보통 세가지의 문제점에 의해서 빌드툴을 선택하게 된다.


1.GUI환경이 안먹혀요.

아마 여러분들에게 가장 와닿는 문제일것이다. GUI환경에서 여러분들은 코드를 작성할때 이클립스라는 사기 IDE를 쓴다.

그러나 타겟이 GUI 환경이 아니라면 어떨까? 서버나 IOT같은 CUI환경에서 여러분이 만든 이클립스를 켤 수 없다.

그러니 여러분은 멍때리고 있을 수 밖에 없는 것이다. 이제 학교에서 배운 java,javac을 써서 사용해보려고하니 보통 노가다가 아니다.

이 때 여러분이 빌드시스템을 배웠다면? 당장 빌드 시스템을 설치하고 명세를 한후 빌드시스템을 실행하면된다.

결국 CUI환경에서는 빌드시스템이 필수라는 것이다.


2.너랑 나랑 IDE도 다르고 설정도 다르고 만드는 파일도 다르고...

이게 여러분들이 두번째로 와닿는 문제이다. 모두 똑같은 IDE, 똑같은 설정을 쓰면 당연히 좋다.

그러나 사람이 조금 쓰다보면 설정은 휙휙 바뀌게 된다. 또한 IDE에 대해서 자바는 세가지가 있으며

셋의 인지도와 장점이 확고하기에 왠만해서 IDE를 바꾸지 않으려 한다.

이 경우에 빌드가 제대로 안되는 경우가 허다한데 IDE마다 경로를 취급하는 방식, 파일을 만드는 방식이 다르기 때문이다.

여기서 서로 빌드시스템으로 명세를 해뒀다면 어떤 IDE에 어떤 설정으로 쓰건 똑같은 output을 만들어 낼 수 있다.


3.프로젝트가 커지니 효율이 급감

이게 현업에서 쓰는 이유라고 할 수 있다. 빌드 시스템을 쓰지 않는다면 작업 효율이 떨어질 수 밖에 없다.

예를들어 보자. 여러분이 현재 프로젝트에 jar파일을 종류별로 20개 정도 만드려고 한다고 치자.

이런 명세를 하지 않고 이클립스로 생으로 하려하면 노가다이며 자동화도 되지 않는다.

그 외에도 이패키지의 main과 저 패키지의 클래스드를 섞어서 빌드하려고 한다고 하자.

이런 경우에도 eclipse로 하긴 힘든 작업이다. 그나마 작을때는 노가다로 때우면 되지만 빌드를 여러번 해야한다면?

지옥도가 펼쳐진다. 이런 경우때문에라도 빌드 시스템을 쓰게 된다.


이정도면 빌드시스템을 설치하는 이유는 대강 설명한것 같다.

이제 어떤 빌드시스템을 소개할것이냐? 바로 ant빌드이다.

ant빌드는 역사도 오래됬고 자바에서 가장 기초가 되며 무엇보다 장점은 매우 쉽다는 것이다.

후에 나올 maven이나 gradle이 꽤 높은 진입장벽을 가졌다면 ant는 낮은 진입장벽과 높은 자유도를 가진다.

대신에 할수 있는 작업의 수준도 낮으므로 서로 일장일단이 있다고 보면된다.


ant는 이클립스에 내장되어있므로 이클립스를 사용하는것도 하나의 방법일 것이다.

그러나 필자의 생각은 작업은 이클립스의 자동완성을 사용해서 하되 실제 실행은 터미널에서 해보는걸 추천한다.

그래서 ant를 설치하자는 것이다.


ant 설치



http://ant.apache.org/bindownload.cgi


해당 사이트에서 ant를 받자. 윈도우 환경이면 아무래도 zip이 편하긴 하겠지만 사실 요즘엔 뭘로 받던 상관은 없다.



파일 내부는 이렇게 생겼다. ant는 전형적인 리눅스식 다운로드방식으로 따로 설치파일을 실행할필요없이 다운이 곧 설치이다.

이 파일 자체를 쓰게 되는 것이므로 중요한 위치에 옮겨두자.



필자는 윈도우즈 환경에서는 Application이라는 폴더에 모두 모아둔다.

맥이나 리눅스에서도 Application 이라는 폴더를 만드는데 위치가 좀 다르다.

이걸 관리하는 방식은 여러분 마음대로이다.


환경변수 설정



이제 아까 설치한 파일을 환경변수로 지정하자. 리눅스식으로 하면되는데 ANT_HOME이라는 변수에 파일을 저장하자.



그리고 실행파일에 %ANT_HOME%\bin을 해준다. 만약 리눅스나 맥이라면 $ANT_HOME/bin이라고 해주면된다.

물론 리눅스 맥계열이면 알아서 잘할거라 믿는다.



ant --version을 치면 제대로 실행됨을 알 수 있다.


'Usage > Java-Project Management' 카테고리의 다른 글

[Ant]자바파일 여러개 컴파일하고 실행(6)  (0) 2018.03.17
[Ant]property(5)  (0) 2017.10.06
[Ant]clean target(4)  (0) 2017.10.06
[Ant]target 나누기(3)  (0) 2017.10.06
[Ant]간단한 ant 프로젝트 만들기(2)  (0) 2017.10.06

+ Recent posts