Apache Ant
둘러보기로 가기
검색하러 가기
Apache ANT에 대한 전반적인 사항을 정리한다.
Apache ANT는 Java build 도구이다.
- 홈페이지 : http://ant.apache.org/
- 다운로드 : http://ant.apache.org/bindownload.cgi
- 라이센스 : Apache License, Version 2.0
- 플랫폼 : Windows, Unix, Linux
설치 가이드
아래 설치 가이드는 Windows Server 2003을 기준으로 작성한 것 입니다. 설치 환경이 틀릴 경우에는 별도의 주석을 달아 주세요.
Apache ANT 설치
- 다운로드 사이트에서 "apache-ant-1.7.0-bin.zip"을 다운로드 한다.
- apache-ant-1.7.0-bin.zip의 압축을 풀어 d:/OpenBiz/11_tools/ant170 (%ANT_HOME%)에 복사한다.
- Apache ANT 설치 후 사용하기 위해서 필요한 환경을 설정한다.
- ANT_HOME=d:/OpenBiz/11_tools/ant170
- PATH=d:/OpenBiz/11_tools/ant170/bin (기존 PATH에 추가)
- 바탕화면의 "내 컴퓨터"에서 오른 마우스를 클릭한 후 "속성"을 선택한다. "고급" 탭에서 하단에 있는 "환경 변수" 버튼을 누른다. 위에 명시한 환경 변수를 추가 또는 수정한다.
- 도스창에서 설치된 Apache ANT가 정상적으로 동작하는지 확인한다.
- "시작" 메뉴를 누른 후 "실행" 메뉴를 선택한다.
- 입력 화면에서 "cmd"를 입력하고 "확인" 버튼을 눌러 도스창을 띄운다.
- 다음 명령을 도스창에서 실행한다.
C:\> ant -version Apache Ant version 1.7.0 compiled on December 13 2006
CentOS에서 Apache Ant 설치
yum install ant ant-* ant -version
사용자 가이드
유용한 Tip
- 화면에 메시지 표시
<echo message="pnus: Call util-wsrp/compile." /> <echo message="pnus: app.server.type - ${app.server.type}" />
- 사용자 입력 받기
<target name="zztest"> <input addproperty="pgmName" message="Enter program name : " /> <echo message="The program name is ${pgmName}" /> </target>
개발 환경 설정
- 개발용 폴더(/cloudnas/develop/) 하위 구조
- bin/ : Compile된 ~.class 파일
- config : 설정 파일
- lib : 라이브러리
- logs : 로그 파일
- output : 임시 작업 폴더
- src : 프로그램 소스
- /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.45.x86_64/lib/tools.jar 파일 생성
- vi /cloudnas/develop/config/config.properties
proj.name=BigData proj.root=/cloudnas/develop proj.charset=UTF-8 proj.loglevel=Info proj.src=${proj.root}/src proj.lib=${proj.root}/lib proj.config=${proj.root}/config proj.target=${proj.root}/bin proj.wsdl=${proj.root}/wsdl proj.log=${proj.root}/logs proj.output=/cloudnas/develop/output
- vi /cloudnas/develop/config/log4j.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"> <appender name="RollingFileAppender" class="org.apache.log4j.RollingFileAppender"> <param name="File" value="/cloudnas/develop/logs/logfile.log" /> <param name="MaxFileSize" value="10MB" /> <param name="MaxBackupIndex" value="10" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="%d [%t] %-5p %c{2} - %m%n" /> </layout> </appender> <root> <priority value ="debug" /> <appender-ref ref="RollingFileAppender"/> </root> </log4j:configuration>
- vi /cloudnas/develop/build.xml
- TuxedoClient2 : 프로그램 실행, 실행하기를 원하는 프로그램으로 변경한 후 작업 하세요.
- makeJar : BigData.jar 파일 생성, Hadoop에서 필요한 jar 파일 생성시 사용
- compile : 프로그램 컴파일
<?xml version="1.0" encoding="UTF-8"?> <project name="BigData" default="makeJar" basedir="."> <property file="config/config.properties" /> <path id="default.classpath"> <pathelement location="${proj.config}" /> <pathelement location="${proj.target}" /> <pathelement location="${proj.lib}/esper/esper/lib/commons-logging-1.1.1.jar" /> <pathelement location="${proj.lib}/esper/esper/lib/log4j-1.2.16.jar" /> <pathelement location="${proj.lib}/hadoop/hadoop-core-1.2.1.jar" /> <pathelement location="${proj.lib}/hadoop/lib/commons-cli-1.2.jar" /> </path> <target name="TuxedoClient2"> <echo message="TuxedoClient2 프로그램 실행" /> <java classname="com.jopenbusiness.hadoop.esper.cli.TuxedoClient2" classpathref="default.classpath" fork="true"> <jvmarg value="-Dfile.encoding=UTF-8" /> <arg value="1" /> <arg value="1000" /> <arg value="30" /> </java> </target> <target name="makeJar" depends="compile"> <echo message="BigData.jar 파일 생성" /> <delete file="${proj.output}/BigData.jar"/> <jar destfile="${proj.output}/BigData.jar" basedir="${proj.target}" /> </target> <target name="compile"> <echo message="프로그램 컴파일" /> <javac srcdir="${proj.src}" destdir="${proj.target}" classpathref="default.classpath" source="1.6"> </javac> </target> </project>
- vi /cloudnas/develop/makeJar.bash
- 실행 권한 설정 : chmod 744 /cloudnas/develop/makeJar.bash
- 실행을 하면 먼저 컴파일을 한 후에 /cloudnas/develop/output/BigData.jar.jar 파일을 생성 합니다.
#!/bin/bash export JAVA_HOME=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64 cd /cloudnas/develop ant makeJar export JAVA_HOME=/usr/lib/jvm/jre
참고 문헌
- Apache ANT User Manual
- Jikes : IBM의 Java 컴파일러