본문 바로가기
Dev/ETC

Ant 태그

by nakanara 2008. 2. 14.
반응형

Java 빌드 와 Ant를 이용할 경우의 구문 비교

Java Ant 기능
md build\classes <mkdir dir="build\classes" /> build\classes 폴더 생성
javac
     -sourcepath src
     -d build\classes
     src\HelloWorld.java
<javac
     srcdir="src"
     destdir="build\classes"/>
자바 컴파일
src : 소스 디렉토리
build\classes : 컴파일된 소스 위치
md build\jar <mkdir dir="build\classes" /> build\jar 폴더 생성
jar cfm
     build\jar\HelloWorld.jar
     mf
     -C build\classes
<jar
    
destfile="build\jar\HelloWorld.jar"
basedir="build\classes">
<manifest>
     <attribute name="Main-Class" value="HelloWorld"/>
</manifest>

</jar>
HelloWorld.jar 생성

Ant 빌드 파일

<?xml version="1.0"?>


<!--
name : 프로젝트 이름
basedir : 프로젝트 기준 디렉토리
default : 초기 실행 작업, 아무런 액션없이 실행한다면 이 작업을 수행
property : 프로젝트에 사용할 각 변수 설정
-->

<project name="HelloWorld" basedir="." default="usage">

<property name="java.src.dir" value="src">
<property name="target.dir" value="target">

<!--
target : 하나의 실행(작업) 이름
description : 
echo :  화면에 표시될 메세지
-->

<target name="usage" description="Ant Build Usage">
     <echo message= ""/>
     <echo message="HelloWorld Ant Build"/>
     <echo message="compile.Java                      -> Compile Java" />
     <echo message="jar                                      -> Create jar />
     <echo message="copy.file                             -> Copy Configuration File"/>
     <echo message="clear                                   -> Clean Output Folder"/>
</target>


<!--
  srcdir : 컴파일 하기 위한 자바 소스 파일의 위치
  destdir : 컴파일 된 클래스를 위치 시킬 폴더
-->

<target name="compile.java" >
     <javac srcdir="${java.src.dir}" destdir="${target.dir}" />
</target>

<!--
    jar : jar 파일 만들기 위한 명령
    jarfile : jar 파일의 위치와 파일 이름
    basedir : jar로 묶을 클래스 파일의 위치
   -->

<target name="jar" depends="compile.java">
    <jar jarfile="${jar.dir}/Hello.jar"  basedir="${classes.dir}" />
</target>



자세한 도움말은 http://ant.apache.org/manual/

반응형

'Dev > ETC' 카테고리의 다른 글

CMMI  (0) 2008.09.10
서버 부하 분활 시스템  (0) 2008.03.24
ANT의 활용도  (0) 2008.02.14
Live Writer 와 티스토리  (0) 2008.02.13
Flex IMEMODE  (0) 2007.11.08