How to use Ant
Ant ÀÇ »ç¿ë¿ë·Ê¿Í »ç¿ë¹ý |
Table Contents
5. ºÎ·Ï à ÀÌ°Ô ÇÙ½ÉÀÏ °Í °°À½.. ¤Ñ¤Ñ;
ܪ) Àú´Â ±¹¾î¼±»ý´Ôµµ ¾Æ´Ï¸ç ´õ±º´Ù³ª ±¹¾î¸¦ ÁöÅ°°í ¾Æ²¸¾ß ÇÏ´Â Àǹ«°¨À¸·Î ¹«ÀåµÈ »ç¶÷µµ ¾Æ´Õ´Ï´Ù.
Àü ´ÜÁö À¥¿¡¼ ³ª°í ÀÚ¶õ »ç¶÷ÀÌ¸ç °íµîÇб³ ±¹¾î ½Ã°£¿¡ ¹è¿î ¾ð¾îÀÇ ÀÚÀǼº°ú »çȸ¼ºÀ» ¹Ï´Â »ç¶÷À̸ç,
¾ðÀÇÀÇ ¿ª»ç¼ºÀ» ±× ¾î´À¶§º¸´Ù ºü¸£°Ô Àý°¨ÇÏ´Â Çö´ë»çȸ¸¦ »ì¾Æ°¡´Â »ç¶÷ÀÏ »ÓÀÔ´Ï´Ù.
±×·¯¹Ç·Î °¡²û »ýÈ°½À°üÀÌ µÇ¾î ¹ö¸° ¾î±¸³ª ¹®¹ýÆı«°¡ º¸ÀÌ´õ¶óµµ ¾çÇظ¦ ºÎŹµå¸³´Ï´Ù.
À¥À» º¸¸é ant À̾߱Ⱑ °ðÀß ³ª¿Â´Ù. ÁÁ´Ù°í´Â Çϴµ¥ ¸Ó°¡ ÁÁÀºÁö.. Á¨Àå!
ÀÌ·± Àú·± Çΰè¿Í ±ÍÂ÷´ÏÁòÀ¸·Î ÀÎÇÏ¿© ¶Ç À̹ٴڿ¡¼ ÇÑ°ÉÀ½ µÚÃÄÁö³ª º¸´Ù ÇÏ´Â ´ä´äÇÑ °¡½¿¸¸ ¾µ¾î ³»¸±»Ó..
(¹°·Ð ÀÌ·±»óȲÀ» ¿¬ÃâÇÏ´Â °ÍÀº ant»Ó¸¸ÀÌ ¾Æ´ÏÁö¸¸.. ¤Ñ¤Ñ;)
ºô´õ µµ±¸¶ó´Âµ¥ µµ´ëü ¾ó¸¶³ª Æí¸®Çϴٱ淡.. ±×·± »ý°¢ÀÇ ¹Ýº¹»Ó..
°³ÀÎÀûÀ¸·Î Àڱ׸¶ÇÑ framework¸¦ Çϳª ¸¸µé·Á°í Âɹ°µü °Å¸®´Ù, ÄÄÆÈÇÏ´Â°Ô ±ÍÂú¾Æ¼ Åõ´ú°Å¸®´Âµ¥ ¹®µæ
ºô´õ µµ±¸ ant°¡ »ý°¢³ª À̹ø±âȸ¿¡ ÀÌ³Ñ ÇѳѸ¸ ¸ÕÀú ÆÐ°í °¡ÀÚ¶õ »ý°¢À¸·Î À¥À» µÚÀû°Å·È´Ù.
»ç½Ç ¸¾ Àâ°í ÇÑ³Ñ ÆбⰡ Èûµç ÀÌÀ¯°¡ ÇÑ³Ñ Æаí ÀÖÀ½ À̳ÑÀú³ÑÀÌ ³ªÅ¸³ª ´Ù °øºÎÇØ¾ß ÇÑ´Ù´Â ¾Ð¹Ú ¶§¹®¿¡
³Ê¹« Èûµé¾î.. Á¤¸» À̹ø¸¸Àº ¿·¿¡¼ ÅÂŬÀ» °É¾î¿Íµµ ÀÌ³Ñ ÇѳѸ¸ ÆÐÀÚ°í µ¶ÇÏ°Ô ´ÙÁüÇß´Ù.
Ant °¡ ¾î¶²³ÑÀÎÁö? ÀÌ°Í°¡Áö°í ¹«¾ùÀ» ÇÏÀÚ ´Â°ÇÁö?
±×¸®°í ÇÔ¸¸ µ¹·Áº¸±â¸¦ ¸ñÀûÀ¸·Î ¿¹»ó±â°£À» 5ÀÏ·Î Àâ°í ½ÃÀÛÇß´Ù.
±×·¯³ª °á°ú´Â ´Ü 4½Ã°£ ¸¸¿¡ ¼Ò±âÀÇ ¼º°ú¸¦ ´Þ¼ºÇÒ¼ö ÀÖ¾úÀ¸´Ï¡¦¡¦
»ç½Ç ÀÚÄ«¸£Å¸ ¼¿ï ÇÁ·ÎÁ§Æ®¿¡¼ ±â¿ô°Å¸®±â¸¸ ÇÏ°í ¾Æ¹«·± ÇØ´äÀ» ãÁö ¸øÇѰ͸¸ 3½Ã°£ 30ºÐ..
´Ù¸¥ °÷¿¡¼ ãÀº ³»¿ëµéÀ» ÂüÁ¶ÇÏ¸ç °á±¹Àº 30ºÐ¸¸¿¡ »óȲÀÌ Á¾·á µÈ°ÍÀÌ´Ù.
¾Æ¹«·¡µÎ ¾ç³ÑµéÀÇ »ç°í ¹æ½Ä¿¡ Àͼ÷ÇÏÁö ¾ÊÀºÁö ¿ì¸®³ª¶ó ±³À°ÀÇ ¹®Á¦¿´´ÂÁö¡¦
±× ¾î¶² ³»¿ëµµ ȸ»óÄÁµ¥..
ÀÚÄ«¸£Å¸ °¡¼ ¹®¼ ¾Æ¹«¸® º¸°í Çصµ ÇÊÀÌ ÆÅÆÅ ²ÈÈ÷´Â°Ç ±ØÈ÷ µå¹°¾ú´ø °Í °°´Ù.
¸ðµç ÇØ´äÀº °øÀ¯ÀÇ Á¤½ÅÀ¸·Î ¹«ÀåµÈ À̹ٴÚÀÇ ¸î¸î ¼±ÁöÀÚµéÀÌ À¯Æ÷ÇÑ Âî´Ù½Ãµé¿¡ ÀÖ¾úÀ¸´Ï¡¦.
±×·¡¼ À̹®¼ ¶ÇÇÑ ³ª¿Í ¶È °°Àº ¿ÕÃʺ¸ÀÌ¸ç ³ª¿Í ¶È °°Àº ±³À°À» ¹Þ°í À̹ٴڿ¡¼ °í±ººÐÅõ ÇÏ´Â ¼Ò¼ö¸¦ À§ÇØ
Á¦ÀÛÇϱâ·Î ÇÑ´Ù. – ´Ù¼öÀÏÁö ¼Ò¼öÀÏÁö ³ªµµ ¸ð¸¥´Ù. ÇãÁ¢ÀÌÀÎ ³ªÀÇ °üÁ¡¿¡¼´Â ¾Æ¹«·¡µÎ ¼Ò¼öÀÏ °Í °°´Ù.
±×·¡¼ ÇÔ °øºÎÇغ¸ÀÜ ¸¶À½À¸·Î..
ºÐ¸í ¿©±â¼ º¸¾Ò´Âµ¥.. Çϸé¼
¡°ant project°¡ ¸Ó±æ·¡ ÀÌ·¸°Ô È¥ÀÚ ³î¾Æ?¡± ¶õ »ý°¢À» ÇÏ´Â ¼ø°£¡¦
On November 18, 2002, the Apache board created the Apache Ant top level project. Ant has now
migrated from the Jakarta project into an Apache project of its own. This is primarily an
organizational change and will not affect the technical aspects of the project. Ant retains a strong
association with the Apache Jakarta project. One effect of this change is that the Ant webpage is
¶ó¸ç¡¦¡¦¡¦ ÈÖȲÂù¶õÇÏ°Ô ¹º°¡¸¦ ¼³¸íÇÏ´Â ±Û±Í°¡ ´ë¶ä º¸¿´´Ù.
´ëÃæ º¸¸é Á¶Á÷°³ÆíµîÀÇ ÀÌÀ¯·Î ÀÌ»ç¿ÔÀ¸¸ç ¾ÆÆÄÄ¡ ÀÚÄ«¸£Å¸¿Í Àß Áö³»°í ÀÖ´Ù´Â °Í °°Àºµ¥ º°ÀÌÀ¯ ¾ø´Â °Í °°´Ù.
Àâ¼³ÀÌ ±æ¾ú´Ù. À§ÀÇ ³»¿ëÀº º¸Áö ¾Ê¾Æµµ µÇ´Â ºÎºÐÀÌ´Ù.
AntÇÁ·ÎÁ§Æ® »çÀÌÆ®ÀÇ °ÅâÇÏ°í º¹ÀâÇÏ°í ¹«½¼³»¿ëÀÎÁöµµ ¸ð¸¦ ±×·± ³»¿ëÀ» ¾ø¾Ö ¹ö¸®°í
¡°°í±â ³¬´Â ¹ýÀÌ ¾Æ´Ñ °í±â¸¦ ÁÖ±â À§ÇÑ ¹®¼¡±¸¦ ÁöÇâ Çϵµ·Ï ÇÑ´Ù.
±×·¯¹Ç·Î Ant¶õ ¹«¾ùÀΰ¡ ¾ËÇÊ¿äµµ ¾ø´Ù. ÀÏ´ÜÀº ÄÄÆÈ ½±°Ô Çϵµ·Ï Çϱâ À§Çؼ ¾´´Ù´Â°Í¸¸ ¾Ë¾ÆµÎ°í¡¦
ÄÄÆÈÀÌ ÁÖ´Â ±ÍÂ÷´Æ ¾Ð¹ÚÀÌ ¼Ö¼ÖÇѵ¥ À̳ÑÀÌ Âü ½±°í Àç¹ÌÀÖ°Ô ÇØÁØ´Ù. ±×·¡¼ °³¹ÌÀÎ °Í °°´Ù. ÀÏ´Ü Çغ¸ÀÚ!
2-1. Ant´Ù¿î·Îµå
¼³Ä¡´Â ´Ù¿î·Îµå ¹ÞÀº ÆÄÀÏÀÇ ¾ÐÃàÀ» Ç®°í ȯ°æ¸¸ ¼³Á´ÇÏ¸é µÈ´Ù.
´Ù¿î·Îµå ¹ÞÀº ÆÄÀÏÀ» C:WebServiceAnt ¿¡ µÎ±â·Î ÇÏ¿´´Ù.
À§ÀÇ ±×¸²À» Âü°í ÇÏ¸é µÇ°í¿ä.. ȯ°æ¼³Á¤À» ÇÕ´Ï´Ù.
JAVA_HOME = C:jsdk141
ANT_HOME = C:WebServiceAnt
´ÙÀ½ binÀ» Path¿¡ Àâ´Â´Ù. PATH = %PATH%;C:WebServiceAntbin; ¼³Ä¡ ³¡.
Ãâó : http://jakarta.apache-korea.org/ant/manual/install.html#installing
1. ÇÁ·ÎÁ§Æ® Æú´õ¸¦ Çϳª ¸¸µéÀÚ. ¼Ò½ºÆÄÀÏÀÌ À§Ä¡ÇÒ src, Ŭ·¡½ºÆÄÀÏÀÌ À§Ä¡ÇÒ classes, ¹èÆ÷ÆÄÀÏÀÌ À§Ä¡ÇÒ jar, ¸¶Áö
¸·À¸·Î ¹®¼ÆÄÀÏÀÌ À§Ä¡ÇÒ docs ÀÌ·¸°Ô 4°³ÀÇ Æú´õ¸¦ Àû´çÇÑ ÇÁ·ÎÁ§Æ® Æú´õ ¹Ø¿¡ »ý¼ºÇÑ´Ù.
2. ´ÙÀ½ src¹Ø¿¡ Å×½ºÆ®ÇÒ Àû´çÇÑ java ÇÁ·Î±×·¥À» ¸¸µé¾î µÐ´Ù.
´ÙÀ½Àº test ÇÒ Hello.java ´Ù. Ưº°ÇÑ ÀÌÀ¯¾ø´Ù. ±Ü¾î¼ Å×½ºÆ® Çغ¸½Ã¶ó°í¡¦ ¤Ñ¤Ñ;
public class Hello {
public static void main (String[] args) {
System.out.println (¡°hello Ant!¡±);
}
} |
2-4. Ant ºôµåÆÄÀÏ ¸¸µé±â
1. Ant ¸¦ ½ÇÇàÇϸé ÇØ´ç µð·ºÅ丮ÀÇ build.xmlÀ» ±âº»ÀûÀ¸·Î ã´Â´Ù. ¹°·Ð build.xml¸»°í mySetting.xmlµîµîÀ¸·Î
À̸§À» ¸· ÁÙ¼öµµ ÀÖ´Ù. ÀÌ·¸°Ô ÁÖ°í ³ª¸é ant ½ÇÇà½Ã –buildfile À̶õ ¿É¼ÇÀ¸·Î µû·Î È£ÃâÇØ¾ß ÇÑ´Ù.
Á¤½Å °Ç°»ó °Á build.xml·Î ½ÇÇà ÇÏ°í ¿É¼Çµé¿¡ ´ëÇؼ´Â ÀÏ´Ü Çغ¸°í Á¤¸®¸¦ ÇÑ´Ù.
2. ÀÌ build.xmlÀº ÄÄÆÈ (ºôµå¶ó°íµµ Çϴµ¥¡¦)Çϱâ À§ÇÑ ¿É¼ÇµéÀ̳ª ¿©·¯ ȯ°æµéÀ» ¼³Á¤ÇÏ´Â °÷ÀÌ´Ù.
±âÁ¸¿¡ Ŭ·¡½º Æнº Àâ°í ÇÏ´ø°É.. ¿©±â¼ ´Ù ¼¼ÆÃÇÑ´Ù°í »ý°¢ÇÏ¸é µÈ´Ù.
3. ´ÙÀ½Àº build.xmlÀÌ´Ù.
<?xml version="1.0"?>
<project name="HelloAnt" default="javadoc" basedir="." >
<property name="src.dir" value="${basedir}/src" />
<property name="classes.dir" value="${basedir}/classes" />
<property name="jar.dir" value="${basedir}/jar" />
<property name="javadoc.dir" value="${basedir}/doc" />
<target name="compile" >
<javac srcdir="${src.dir}" destdir="${classes.dir}" />
</target>
<target name="jar" depends="compile">
<jar jarfile="${jar.dir}/hello.jar" basedir="${classes.dir}" includes="**/*.class" />
</target>
<target name="javadoc" depends="compile, jar" >
<javadoc sourcepath="${src.dir}" sourcefiles="${src.dir}/HelloAnt.java"
windowtitle="HelloAnt API" destdir="${javadoc.dir}" />
</target>
<target name="clean" >
<delete dir="${jar.dir}/jar/*"/>
<delete dir="${javadoc.dir}/doc/*"/>
</target>
</project> |
4. À§ÀÇ xmlÆÄÀÏÀ» Ưº°ÇÏ°Ô °íÄ¥°Ç ¾ø´Ù. À§ÀÇ ³»¿ëµéÀ» ´ëÃæ º¸¸é ÀϽİ߸¸ÀÌ¶óµµ ÀÖ´Â °³¹ßÀںеéÀº ÄÄÆÈ(ºôµå)
Çϴµ¥ ÇÊ¿äÇÑ ±âº»ÀûÀÎ ³»¿ëÀº °¨°¢À¸·Î ¾Ë¼ö ÀÖÀ» °Í °°´Ù. ÀÏ´Ü µ¹·Áº¸°í ÀÚ¼¼ÇÑ ¿É¼ÇÀ» º¸µµ·Ï ÇÏÀÚ.
- ¾Æ¹«¸® »ý°¢Çصµ ´«À¸·Î ¡°¾Æ~~! µÇ´Â±¸³ª!¡± ÇÏ°í °á°ú¸¦ º¸Áö ¾Ê°í¼´Â ¸Ó¸´¼ÓÀÇ ÀDZ¸½ÉÀÌ Áö½Ä½Àµæ¿¡
Àå¾Ö¹°À̶ó´Â Áö·ÐÀ» °¡Á³±â¿¡ ÀÏ´Ü Á·Ã帰í ÆľÇÇÏ´Â ½À°üÀÌ.. ¤Ñ¤Ñ; ±×·¡¼ ¼öÇй®Á¦ Ç®¶§µµ ´äºÎÅÍ º¸°í
¹®Á¦¸¦ Ç®Áö ¾Ê¾Ò´ø°¡? ^^; Á» ÀÖ°Ô º¸À϶ó°í ¡°±Í³³Àû Áõ¸í¡± À̶ó´Â ¸»µµ ¾ÈµÇ´Â ¼ö½Ä¾î¸¦ °¡²û ¾Ö¿ëÇÑ´Ù.
2-5. Ant ½ÇÇà
1. Commend â¿¡¼ ÇÁ·ÎÁ§Æ® µð·ºÅ丮¿¡¼ ant ¶ó°í ½ÇÇàÇÏ¸é µÈ´Ù.
½ÇÇà Çϸé À§¿Í °°ÀÌ ÄÄÆÈÇÏ°í ¹®¼µµ ¸¸µé°í ¾î¼°í Àú¼°í ÇÏ¸é¼ BUILD SUCCESSFUL À̶ó´Â ¸Þ½ÃÁö°¡ º¸ÀδÙ.
2. ±×¸®°í ÇÁ·ÎÁ§Æ® Æú´õ ¹Ø¿¡ °¡º¸¸é °¢°¢ÀÇ Æú´õ ¹Ø¿¡ ÄÄÆÈÀÌ ¿Ï·áµÈ Ŭ·¡½º ÆÄÀÏ, jarÆÄÀÏ, java doc µéÀÌ »ý°åÀ»
°ÍÀÌ´Ù. ÀÌ°ÍÀÌ ¹Ù·Î ant ÀÌ´Ù.
<?xml version="1.0"?>
<!—
name : ÇÁ·ÎÁ§Æ® À̸§ (¾Æ¹«²¨³ª Çصµ µË´Ï´Ù.)
default : the default target to use when no target is supplied. (Çʼö) à ±Ùµ¥ Àß ¸ð¸£°Ú´Ù.
ÀÛ¾÷À» ¼öÇàÇÒ target nameÀ» ÁØ´Ù.
javadoc¶ó·Î targetÀ» ÁÖ¾úÀ¸¹Ç·Î depends¿¡ ÀÇÇØ compileÇÏ°í jar¼öÇàÇÏ°í javadoc±îÁö
¼öÇàÀ» ÇÏÁö¸¸ clean±îÁö´Â ¼öÇàÀ» ÇÏÁö ¾Ê´Â´Ù.
±×·¯¹Ç·Î ÄÄÆȸ¸ ÇÏ·Á¸é default=¡±compile¡± ·Î ¼³Á¤ÇØÁÖ¸é µÈ´Ù.
basedir : ±×³É ÀÛ¾÷ µð·ºÅ丮 ±»ÀÌ À§¿Í °°ÀÌ build.xmlÀÌ parentÆú´õÀ϶§ basedir=¡±.¡± À̶ó°í ÇØÁÙ ÇÊ¿ä ¾ø´Ù.
Áï, project ű״ ÀÌ·¸°Ô <project default="javadoc" > »ç¿ëÇÒ¼ö ÀÖ´Ù.
-à
<project name="HelloAnt" default="javadoc" basedir="." >
<!—
${basedir} : ÇÁ·ÎÁ§Æ®ÀÇ Àý´ë °æ·Î (À§¿¡¼ basedirÀ» ¼³Á¤¾ÈÇϸé ÇöÀç ÇÁ·ÎÁ§Æ®ÀÇ Àý´ë °æ·Î)
-à
<property name="src.dir" value="${basedir}/src" />
<property name="classes.dir" value="${basedir}/classes" />
<property name="jar.dir" value="${basedir}/jar" />
<property name="javadoc.dir" value="${basedir}/doc" />
<!—
javac : ÄÄÆÄÀÏ
srcdir : ¼Ò½ºÆÄÀÏÀÇ À§Ä¡
destdir : ÄÄÆÈµÈ Å¬·¡½ºÆÄÀÏ À§Ä¡
-à
<target name="compile" >
<javac srcdir="${src.dir}" destdir="${classes.dir}" />
</target>
<!—
jar : jar ¾ÐÃà
jarfile : jarÆÄÀÏÀÌ »ý¼ºµÉ °æ·Î¿Í jarÆÄÀÏ À̸§
basedir : ÄÄÆÄÀÏµÈ ÆÄÀϵéÀÇ À§Ä¡
includes : ¸ðµç Æú´õ¿¡¼ Ŭ·¡½º ÆÄÀϸ¸ jar»ý¼º
-à
<target name="jar" depends="compile">
<jar jarfile="${jar.dir}/hello.jar" basedir="${classes.dir}" includes="**/*.class" />
</target>
<!—
javadoc : javadoc ¼öÇà
sourcepath : javadocÀ» ¼öÇàÇÒ ¼Ò½ºÆÄÀÏÀÇ À§Ä¡
sourcefile : ÆÄÀÏÀ̸§
windowtitle : Á÷Á¢ Çغ¸½Ã±æ¡¦ ^^;
destdir : ¹®¼°¡ ÀúÀåµÉ °æ·Î
** depends : ÀÇÁ¸¼º? ÇöÀç Ÿ°ÙÀ» ¼öÇàÇϱâ Àü¿¡ depends¿¡ Á¤ÀÇµÈ Å¸°ÙÀ» Â÷·Ê´ë·Î ¸ÕÀú ¼öÇàÇÑ´Ù.
Áï compile°ú jar°¡ ¼öÇàÇÑÈÄ javadoc¸¦ ¼öÇàÇÑ´Ù.
-à
<target name="javadoc" depends="compile, jar" >
<javadoc sourcepath="${src.dir}" sourcefiles="${src.dir}/HelloAnt.java"
windowtitle="HelloAnt API" destdir="${javadoc.dir}" />
</target>
<!—
delete : »èÁ¦
-à
<target name="clean" >
<delete dir="${jar.dir}/jar/*"/>
<delete dir="${javadoc.dir}/doc/*"/>
</target>
</project> |
3-2. ant ½ÇÇà ¿É¼Ç ¹× ȯ°æº¯¼ö
ant¸¦ ½ÇÇàÇÒ ¶§ ant ¸¸ Çؼ ½ÇÇàÀ» Çß´Ù. ÀÌÁ¦ ant¸¦ ½ÇÇàÇÒ ¶§ À¯¿¬ÇÏ°Ô ÀÌ¿ëÇÒ¼ö ÀÖ´Â ´Ù¾çÇÑ ½ÇÇà ¿É¼ÇÀ» º¸ÀÚ.
Options
-help : help ¸í·É¾î
-projecthelp : build.xmlÀÌ Á¸ÀçÇÏ´Â µð·ºÅ丮¿¡¼ ½ÇÇà
-diagnostics : Çغ¸¸é ¾Ð¹Ú ¤Ñ¤Ñ; ¿©·¯°¡Áö, ¾Æ´Ï ¾ÆÁÖ ¸¹Àº Á¤º¸µéÀ» Ãâ·ÂÇÑ´Ù.
-quit : ºôµå °úÁ¤À» º¸¿©ÁÖÁö ¾Ê°í ÃÖÁ¾ °á°ú¸¸ Ãâ·Â
-debug : µð¹ö±× Á¤º¸ Ãâ·Â
-emacs : Àß ¸ð¸£°ÚÀ½ ¤Ñ¤Ñ;
-logfile : commend¿¡ Ãâ·ÂµÇ´Â ºôµù °úÁ¤ Á¤º¸¸¦ ÆÄÀÏ·Î ±â·Ï ex) ant –logfile building.log
-logger, -listener : Àß ¸ð¸£°ÚÀ½.
ÀÚ¼¼ÇÑ ³»¿ëÀº ¿ä±â·Î --à http://ant.apache.org/manual/listeners.html
-buildfile : build.xmlÀ» »ç¿ëÇÏÁö ¾Ê°í ´Ù¸¥ ÆÄÀÏ¿¡¼ ºôµå¸¦ ÇÏ°íÀÚ ÇÒ ¶§
-D : property °ªÀ» ÀÎÀÚ·Î »ç¿ëÇÒ ¶§ à build.xmlÀ» ÀÌ¿ëÇÏ¿© ´Ù¾çÇÏ°Ô »ç¿ëÇÒ¼ö ÀÖ´Ù.
-propertyfile : À§ÀÇ D¿É¼ÇµéÀ» ¼¼Æ®·Î »ç¿ëÇϱâ À§ÇÑ propertyÆÄÀÏÀ» ÀÌ¿ëÇÒ ¶§.
-inputhandler : Àß ¸ð¸£°ÚÀ½!
ÀÚ¼¼ÇÑ ³»¿ëÀº ¿ä±â·Î --à http://ant.apache.org/manual/inputhandler.html
-find : ex) ant –find build.xml À̶ó°í Çϸé.. ½Ã½ºÅÛ ·çÆ®¿¡¼ ÂÞ¿í ÈÈÀ¸¸é¼ build.xmlÀ» ã¾Æ¼ builidingÇÑ´Ù.
* Àß ¸ð¸£°ÚÀ½À̶ó µÈ ºÎºÐÀº ½ÇÁ¦·Î »ç¿ë¿ëµµ¿Í »ç¿ë¹ýÀ» ¸ð¸£±â¿¡ À§¿Í °°ÀÌ ±âÀç Çß´Ù.
ȯ°æº¯¼ö (Á¤È®ÇÏ°Ô »ç¿ë¹æ¹ýÀ» ¸ð¸§)
1. JAVACMD
- full path of the Java executable.
Use this to invoke a different JVM than JAVA_HOME/bin/java(.exe)
. ´Ù¸¥ JVM À» »ç¿ëÇÏ°í ÇÒ ¶§.
2. ANT_OPTS - command-line arguments that should be passed to the JVM.
For example, you can define system properties or set the maximum Java heap size here.
3. ANT_ARGS
- Ant command-line arguments. For example, set ANT_ARGS
to point to a different logger,
include a listener, and to include the -find
flag. Note: If you include -find
in ANT_ARGS
, you should
include the name of the build file to find, even if the file is called build.xml
.
4. Ŭ·¡½º Æнº ¼³Á¤ ¹× ±âŸ |
ÇÁ·ÎÁ§Æ® ȯ°æÀ» ¿¹Á¦·Î ±¸¼ºÇϱ⿡´Â ¸¹Àº Á¦¾àÀÌ µû¸£¹Ç·Î ´ÙÀ½ÀÇ È¯°æÀ» Âü°í ÇÏ¿© °¢ÀÚ¿¡ ¾Ë¸ÂÀº ÇÁ·ÎÁ§Æ® ȯ°æ
¿¡¼ »ç¿ëÇÒ¼ö ÀÖµµ·Ï ÇÑ´Ù.
Ant Å×½ºÆ®¸¦ À§ÇÑ ÇÁ·ÎÁ§Æ® ȯ°æÀ» ´ÙÀ½°ú °°ÀÌ ±¸¼ºÇÑ´Ù.
¿ì¼± wwwAnt ¹Ø¿¡¼ ÇÁ·ÎÁ§Æ®¸¦ ÁøÇàÇÑ´Ù. ½ÇÁúÀûÀ¸·Î »ç¿ëµÉ ȯ°æÀº WEB-INF Æú´õ°¡ ant ÀÇ ±âº»ÀÛ¾÷ dirÀÌ´Ù.
ÀϹÝÀûÀÎ À¥ ÇÁ·ÎÁ§Æ®ÀÇ ¸ð½ÀÀ» ÇÏ°í ÀÖÀ¸¸ç ±ÍÂ÷´ÏÁòÀ¸·Î ÀÎÇÏ¿© ±×³É ¿Ï·áµÈ ÇÁ·ÎÁ§Æ®Áß¿¡ Çϳª¸¦ °¡Á®¿Â°ÍÀÌ´Ù.
Å×½ºÆ®¸¦ À§ÇÏ¿© ¼ºí¸´¿£ÁøÀº °í·ÁÇÏÁö ¾Ê°í ÇÊ¿äÇÑ ¸ðµç libarary¸¦ WEB-INFlib ¹Ø¿¡ µÎ¾ú´Ù.
Áö±Ý ¸ñÀûÀº °³¹ßÆÀ¿¡¼ °³¹ßÇÑ WEB-INFsrc ¿¡ ÀÖ´Â ¸ðµç ¼Ò½ºÆÄÀϵéÀ» ÄÄÆÈÇÏ°í ÄÄÆÈµÈ classÆÄÀϵéÀº
WEB-INFclasses ¹Ø¿¡ µÑ°ÍÀÌ¸ç ¶ÇÇÑ ¹èÆ÷ ÆÄÀÏ°ú ¹®¼µéÀ» »ý¼ºÇÒ°ÍÀÌ´Ù.
ÇÁ·ÎÁ§Æ®¿¡ ´ëÇÑ À§¿Í °°Àº ¿ä±¸¸¦ ºÎÇÕÇϱâ À§ÇÑ build.xmlÆÄÀÏÀ» ¸¸µé±â·Î ÇÑ´Ù.
´ÙÀ½Àº À§ÀÇ ¿ä±¸µéÀ» ¼ö¿ëÇϱâ À§ÇÑ build.xml ÀÌ´Ù.
<?xml version="1.0"?>
<project name="InRealProjectTest" default="javadoc">
<property name="p_src.dir" value="${basedir}/src" />
<property name="p_classes.dir" value="${basedir}/classes" />
<property name="p_jar.dir" value="${basedir}/jar" />
<property name="p_javadoc.dir" value="${basedir}/doc" />
<property name="libRoot" value="${basedir}/lib" />
<property name="tomcatRoot" value="C:/WebService/Tomcat/common/lib"/>
<!—
»ç¿ëÇÏ´Â ÆÐÅ°Áö°¡ Àִ Ŭ·¡½º °æ·Î ¼³Á¤
-à
<path id="p_classPath">
<pathelement path="${libRoot}/mm.mysql-2.0.14-bin.jar"/>
<pathelement path="${libRoot}/junit.jar" />
<pathelement path="${libRoot}/velocity-1.2.jar" />
<pathelement path="${libRoot}/velocity-dep-1.2.jar" />
<pathelement path="${tomcatRoot}/servlet.jar" />
<pathelement path="${tomcatRoot}/tools.jar" />
<pathelement path="${tomcatRoot}/activation.jar" />
<pathelement path="${tomcatRoot}/mail.jar" />
</path>
<!—
Ŭ·¡½º Æнº´Â ¾Æ·¡¿Í °°ÀÌ À§¿¡¼ ¼³Á¤ÇÑ °æ·ÎµéÀ» classpathÀÇ refid°ªÀ¸·Î ¼³Á¤¸¸ Çϸé ÀνÄÇÑ´Ù.
-à
<target name="compile" >
<javac srcdir="${p_src.dir}" destdir="${p_classes.dir}">
<classpath refid="p_classPath"/>
</javac>
</target>
<target name="jar" depends="compile">
<jar jarfile="${p_jar.dir}/webProject.jar" basedir="${p_classes.dir}" includes="**/*.class" />
</target>
<!—
fileset ű׸¦ ÀÌ¿ëÇÏ¿© ¹®¼ÈÇÒ °æ·Î¿Í ÆÄÀϵéÀ» ¼³Á¤ÇÒ¼ö ÀÖ´Ù.
*.java´Â filesetÀÇ ·çÆ®¿¡ ÇØ´çÇÏ´Â ¸ðµç JavaÆÄÀÏÀ» ¹®¼È Çϴ°ÍÀ̸ç
**Àº ±× ¾Æ·¡ÀÇ ¸ðµç ÆÐÅ°Áö³»ÀÇ ¸ðµç ÆÄÀÏÀ» ¹®¼È ÇÑ´Ù´Â °ÍÀÌ´Ù.
Exclude´Â ¹®¼È¿¡¼ Á¦¿ÜÇÒ °ÍÀÌ´Ù.
-à
<target name="javadoc" depends="compile, jar">
<javadoc windowtitle="HelloAnt API" destdir="${p_javadoc.dir}">
<classpath refid="p_classPath"/>
<fileset dir="${p_src.dir}" defaultexcludes="yes">
<include name="*.java" />
<include name="**" />
<exclude name="*.xml" />
</fileset>
</javadoc>
</target>
</project>
|
ÀÌ»ó°ú °°ÀÌ Ã³À½ ¸ñÀû¿¡ ºÎÇյǴ build.xmlÆÄÀÏ·Î ÇÁ·ÎÁ§Æ® ÄÄÆÄÀÏ, ¹®¼È, jar¾ÐÃà ÆÄÀÏÀ» ¿Ï¼ºÇÏ¿´´Ù.
±×·±µ¥ ÄÄÆÄÀÏ ÇÒ ¶§ °³º°ÀûÀ¸·Î ƯÁ¤ÆÄÀÏ¿¡ ´ëÇÑ ÄÄÆÄÀÏÀ» ÇÏ´Â ÀÏÀÌ ´õ ¸¹´Ù.
¸¶Áö¸·À¸·Î ƯÁ¤ ÆÄÀÏ¿¡ ´ëÇؼ ¼±ÅÃÀûÀ¸·Î ÄÄÆÄÀÏÀ» ÇÒ¼ö ÀÖ´Â build.xmlÀ» ÀÛ¼ºÇÏ°í ¸¶Ä¡±â·Î ÇÑ´Ù.
4-3. ƯÁ¤ ÆÄÀϸ¸À» À§ÇÑ build.xml ¸¸µé±â
»ç¿ëÀÚ°¡ È£ÃâÇϴ ƯÁ¤ ÆÄÀϸ¸À» ÄÄÆÄÀÏ Çϱâ À§ÇÑ build.xmlÀÌ´Ù.
À§¿¡¼ ¸¸µé¾îÁø build.xml¿¡¼ Ãß°¡ÇÏ¿© ÀÛ¾÷ Çϱâ·Î ÇÑ´Ù.
<?xml version="1.0"?>
<project name="InRealProjectTest" default="javadoc">
<property name="p_src.dir" value="${basedir}/src" />
<property name="p_classes.dir" value="${basedir}/classes" />
<property name="p_jar.dir" value="${basedir}/jar" />
<property name="p_javadoc.dir" value="${basedir}/doc" />
<property name="libRoot" value="${basedir}/lib" />
<property name="tomcatRoot" value="C:/WebService/Tomcat/common/lib"/>
<path id="p_classPath">
<pathelement path="${libRoot}/mm.mysql-2.0.14-bin.jar"/>
<pathelement path="${libRoot}/junit.jar" />
<pathelement path="${libRoot}/velocity-1.2.jar" />
<pathelement path="${libRoot}/velocity-dep-1.2.jar" />
<pathelement path="${tomcatRoot}/servlet.jar" />
<pathelement path="${tomcatRoot}/tools.jar" />
<pathelement path="${tomcatRoot}/activation.jar" />
<pathelement path="${tomcatRoot}/mail.jar" />
</path>
<target name="makeClass">
<javac srcdir="${p_src.dir}" destdir="${p_classes.dir}" includes="**/${file}">
<classpath refid="p_classPath"/>
</javac>
</target>
<target name="compile" >
<javac srcdir="${p_src.dir}" destdir="${p_classes.dir}">
<classpath refid="p_classPath"/>
</javac>
</target>
<target name="jar" depends="compile">
<jar jarfile="${p_jar.dir}/webProject.jar" basedir="${p_classes.dir}" includes="**/*.class" />
</target>
<target name="javadoc" depends="compile, jar">
<javadoc windowtitle="HelloAnt API" destdir="${p_javadoc.dir}">
<classpath refid="p_classPath"/>
<fileset dir="${p_src.dir}" defaultexcludes="yes">
<include name="*.java" />
<include name="**" />
<exclude name="*.xml" />
</fileset>
</javadoc>
</target>
</project>
|
À§ÀÇ build.xml¿¡¼ ÁøÇÏ°Ô Ç¥½ÃµÈ ºÎºÐÀÌ Æ¯Á¤ÇÑ ÆÄÀϸ¸À» ÄÄÆÄÀÏ Çϱâ À§ÇØ Ãß°¡µÈ ºÎºÐÀÌ´Ù.
±âÁ¸ÀÇ ÄÄÆÄÀÏÀ» À§ÇÑ target°ú ´Ù¸¦°Ô ¾ø´Ù.
´ÜÁö Ãß°¡ µÈ °ÍÀº includes="**/${file} ÀÌ´Ù.
»ç¿ë¹æ¹ýÀº ant ½ÇÇà½Ã ´ÙÀ½°ú °°ÀÌ ¿É¼ÇÀ» Áִ°ÍÀÌ´Ù.
ant –Dfile=TypeFactory.java makeClass
ant [option] [target] ÀÎ °ÍÀÌ´Ù.
4-4. ¸¶Ä¡¸ç
ÀÌ»ó°ú °°ÀÌ antÀÇ »ç¿ë¹ýÀ» »ìÆì º¸¾Ò´Ù.
¼³¸íÀÌ ºÎÁ·ÇÑÁ¡µµ Àֱ⵵ ÇÏÁö¸¸ óÀ½ »ç¿ë¹ýÀÌ º¹ÀâÇØ º¸ÀδÙ.
À§ÀÇ ¹®¼´Â antÀÇ »ç¿ë¹ýÀÌ ¾Æ´Ï¶ó ant¸¦ ½±°Ô Á¢±Ù Çϱâ À§ÇØ Á¦ÀÛµÈ ¹®¼À̸ç 1½Ã°£¸¸ ÅõÀÚÇؼ À§¿Í °°Àº
±âº»ÀûÀÎ °Íµé¸¸ ¼öÇàÇغ»´Ù¸é ant¸¦ È°¿ëÇÏ¿© ´õ¿í´õ ´Ù¾çÇÑ ¹æ¹ýÀ¸·Î Á¢±Ù ÇÒ¼ö ÀÖÀ» °Í °°´Ù.
À§¿Í °°Àº build.xml¸¸À¸·Îµµ ÃæºÐÈ÷ ¿øÇÏ´Â ÀÛ¾÷À» ÇÒ¼ö ÀÖ°ÚÁö¸¸.
Ant¿¡¼ Java¸í·É¾î ½ÇÇà, ÆÄÀÏ copyµî ´õ ´Ù¾çÇÑ ÀÛ¾÷À» ¼öÇàÇÒ¼ö ÀÖ°í antÀÚü ¸¸À¸·Î Àß ¸¸µé¾îÁö app¸¦ ÀÌ¿ë
ÇÏ¿© ÀڽŸ¸ÀÇ °£´ÜÇÑ °³¹ßÅøÀ̳ª ¹æ¹ý·Ð ±îÁö È®ÀåÇÒ¼ö ÀÖÀ»°ÍÀÌ´Ù.
´Ù ÀÛ¼ºÇÏ°í º¸´Ï ´õ ÁÁÀº ¹®¼°¡ À־¦ ¤Ñ¤Ñ;
»ðÁú ÇÑ°Å °°Àº ±âºÐÀÌ µé¾î¼ ºÎ²ô·´Áö¸¸.. ±×·¡µµ À§ÀÇ ¼³¸íÀ» ½ÇÇàÇغ¸°í ¾Æ·¡ÀÇ Àß Á¤¸®µÈ ¿É¼ÇÀ» º¸¸é¡¦
±¤¸íÀÌ¡¦ ^^
¾ÆÆÄÄ¡ ±×·ì¿¡¼ ³»³õÀº ºô´õÅøÀÎ ant1.4.1¹öÁ¯À» ÀÌ¿ëÇÏ¿© °¢°¢ÀÇ ÅÂ±×¿Í ±×¿¡ ´ëÇÑ ³»¿ëÀ»
ÀÌÅøÀ» ÀÌ¿ëÇÏ¿© java compile¹× ejb-jarÆÄÀÏÀÇ »ý¼º, deploy¹× sqlÆÄÀÏÀÇ Ã³¸®, database¿¡ ´ëÇÑ
Á¢¼ÓÀ» ÅëÇÏ¿© ¸¹Àº ÀϵéÀ» ÇÒ¼ö ÀÖµµ·Ï ±¸¼ºµÇ¾îÁ® ÀÖ½À´Ï´Ù.
°¢ »ç¿ë¹ý°ú »ùÇÃÀ» ÅëÇÏ¿© »ç¿ë¹ýÀ» ÀÍÇôº¸µµ·Ï ÇսôÙ
****************************
****************************
.ÀνºÅçÇϱâ
- ¾Æ·¡ÀÇ »çÀÌÆ®·ÎºÎÅÍ ´Ù¿î¹Þ´Â´Ù.
http://jakarta.apache.org/builds/ant/release/v1.4.1/bin/
- ±ÇÀå»çÇ× jdk1.2¹öÁ¯ÀÌ»óÀ» ÃßõÇÑ´Ù.
¼³Ä¡µÈ µð·ºÅ丮°¡ c:ant. ·Î °¡Á¤ÇßÀ»°æ¿ì¿¡
set PATH=%PATH%;%ANT_HOME%bin
ÀÇ È¯°æº¯¼ö¸¦ Àâ¾ÆÁÖµµ·Ï ÇÑ´Ù.
export ANT_HOME=/usr/local/ant
export JAVA_HOME=/usr/local/jdk1.3.1
export PATH=${PATH}:${ANT_HOME}/bin
****************************
****************************
ant [options] [target [target2 [target3] ...]]
-projecthelp ÇÁ·ÎÁ§Æ®¿¡ ÇÊ¿äÇÑ µµ¿òÀ» º¸¿©ÁØ´Ù
-version ÇöÀç ¹öÁ¯Àº º¸¿©ÁØ´Ù
-quiet ¾Æ¹«·± Ç¥½Ã¾øÀÌ buildÇÑ´Ù
-verbose verbose¸ðµå¸¦ ½Ç½ÃÇÑ´Ù.
-emacs ·Î±ëÁ¤º¸¸¦ ¸¸µé¾î³½´Ù
-logfile file ÁÖ¾îÁø ÆÄÀÏ·Î ·Î±×¸¦ Ãâ·ÂÇÑ´Ù.
-logger classname ÇØ´çŬ·¡½º¸¦ ÀÌ¿ëÇÏ¿© ·Î±ëÀ» ¼öÇàÇÑ´Ù.
-listener classname ¸®½º³ÊŬ·¡½º¸¦ Ãß°¡ÇÑ´Ù.
-buildfile file ´ë»ó buildÆÄÀÏÀ» Á¤ÀÇÇÑ´Ù.
-find file ·çÆ®·ÎºÎÅÍ buildfileÀ» ã´Â´Ù.
-Dproperty=value build¼³Á¤¿¡ ÇÊ¿äÇÑ ÇÁ·ÎÆÛƼ¸¦ ã´Â´Ù.
ant¸¦ batchÆÄÀÏ ¾øÀÌ Á÷Á¢ ½ÇÇàÇÏ°í ½Í´Ù¸é ¾Æ·¡¿Í °°Àº ¿É¼ÇÀ» ÀÌ¿ëÇÏ¿© ½ÇÇàÇÏ¸é µÈ´Ù
java -Dant.home=c:ant org.apache.tools.ant.Main [options] [target]
*************************************
* SimpleBuildÆÄÀÏ ¸¸µé¾îº¸±â *
*************************************
<project name="" default="" basedir=""></project>
name -- ÀÌ ÇÁ·ÎÁ§Æ®ÀÇ ¼³Á¤À̸§À» ±â·ÏÇÑ´Ù.( ¾È½áµÎ ¹«¹æ )
default -- targetÀÌ ÁöÁ¤µÇÁö ¾Ê¾ÒÀ»¶§ default targetÀ¸·Î ¾´´Ù. (¹Ýµå½Ã ±â¼ú)
basedir -- ÇöÀç build¸¦ »ç¿ëÇÒ µð·ºÅ丮¸¦ ¼³Á¤ÇÑ´Ù. º¸Åë ÇöÀçµð·ºÅ丮¸¦ ¸¹ÀÌ »ç¿ëÇÑ´Ù.(¾È½áµÎ µÊ)
================================================================
ÇöÀç buildµÇ´Â targetÀº ´Ù¸¥ target¿¡ ÀÇÁ¸ÇÏ¿© buildµÇ¾îÁú¼ö ÀÖ´Ù.
±×·²°æ¿ì¿¡ ÀÌ tag¸¦ ÀÌ¿ëÇÏ¿© buildÇϵµ·Ï ÇÑ´Ù.
<target name="A"/> -- ÇöÀç buildµÇ¾îÁø´Ù.
<target name="B" depends="A"/> -- A°¡ Á¤»óÀûÀ¸·Î ÀÌ·ç¾îÁ®¾ß¸¸ BÀÇ build°¡ ÀÌ·ç¾îÁø´Ù.
<target name="C" depends="B"/> -- À§¿Í °°Àº ¹æ¹ýÀ¸·Î recursiveÇÏ°Ô ÀÌ·ç¾îÁø´Ù.
<target name="D" depends="C,B,A"/>
¿©±â¼ Á¶ÇÕÀ¸·Î if-unless¸¦ »ç¿ëÇÒ¼öµµ ÀÖ´Ù.
1: <target name="build-module-A" if="module-A-present"/>
2: <target name="build-own-fake-module-A" unless="module-A-present"/>
À§ÀÇ ³»¿ë¿¡¼ module-A-present¿¡ µû¶ó¼ µÎ°¡Áö ÇüÅ·ΠºÐ±âµÇ¸é ¹Ýµå½Ã ÇÑ°¡Áö´Â ½ÇÇàµÇ¾îÁö´Â
¸ð½ÀÀ» º¼¼ö ÀÖ´Ù. module-A-present°¡ ¼º°øÇßÀ»°æ¿ì 1¹øÀ» ¼öÇàÇÏ°í, ½ÇÆÐÇßÀ»°æ¿ì´Â 2¹øÀ¸·Î
ºÐ±âµÇ¾î¼ ½ÇÇàµÉ¼ö ÀÖµµ·Ï ÇÑ´Ù.
targetÀº ´ÙÀ½°ú °°Àº ¼Ó¼ºÀ» °®´Â´Ù.
name -- targetÀÇ À̸§.(¹Ýµå½Ã ±â¼úÇÏ¿©¾ß ÇÔ)
depends -- ÄÞ¸¶(,)·Î ±¸ºÐÇÏ¸ç ´Ù¸¥ target¿¡ ¿µÇâÀ» ¹ÞÀ¸¸ç buildµÇ¾îÁø´Ù.(¾È½áµÎ µÊ)
if -- ÇöÀç targetÀÌ ½ÇÇàµÉ°ÍÀÎÁö¸¦ °áÁ¤(¾È½áµÎ µÊ)
unless -- unlessÀÇ targetÀÌ ½ÇÆÐÇßÀ»°æ¿ì 󸮵Ǵ ºÎºÐ(¾È½áµÎ µÊ)
description -- description(¾È½áµÎ µÊ)
*************************************
*************************************
<property name="foo.dist" value="dist"/>
dist¶õ value¸¦ foo.dist·Î settingÇÑ´Ù.
<property file="foo.properties"/>
foo.propertiesÆÄÀÏÀ» Àоîµé¿© build.xmlÆÄÀÏÀÇ ÇÁ·ÎÆÛƼ·Î ¼¼ÆÃÇÑ´Ù.
<property resource="foo.properties"/>
<property file="${user.home}/.ant-global.properties"/>
¼Ó¼ºÀ» °ãÃļ ÇÁ·ÎÆÛƼ ÆÄÀÏÀ» ÀоîµéÀϼöµµ ÀÖ´Ù.
*************************************
*************************************
<pathelement path="${classpath}"/>
<pathelement location="lib/helper.jar"/>
Ŭ·¡½ºÆнº¸µÅ©¸¦ »ç¿ëÇÏ¿© path ¶Ç´Â classpath¸¦ Ãß°¡½Ãų¼ö ÀÖ´Ù.
Æнº¸¦ °è¼ÓÀûÀ¸·Î Ãß°¡ÇÏ°íÀÚ ÇÒ¶§´Â ; or :¸¦ ÀÌ¿ëÇÏ¿© Ãß°¡ÇÒ¼ö ÀÖ´Ù.
À§ÀÇ ³»¿ëÀ» ¾Æ·¡¿Í °°ÀÌ ¿ä¾àÇÏ¿© ÇÑÁÙ¿¡ Ãß°¡½Ãų¼ö ÀÖ´Ù.
<classpath path="${classpath}"/>
*************************************
*************************************
<project ... >
<pathelement location="lib/"/>
<pathelement path="${java.class.path}/"/>
<pathelement path="${additional.path}"/>
<!-- =====À§ÀÇ ³»¿ëÀº rmic¸¦ ÀÌ¿ëÇÏ¿© Ŭ·¡½ºÆнº¸¦ ÀÌ¿ëÇÑ ÄÄÆÄÀÏÀ» ½ÃµµÇϱâ À§ÇÑ ½ºÅ©¸³Æ®ÀÌ´Ù -->
<pathelement location="lib/"/>
<pathelement path="${java.class.path}/"/>
<pathelement path="${additional.path}"/>
<!-- =====À§ÀÇ ³»¿ëÀº javac¸¦ ÀÌ¿ëÇÏ¿© Ŭ·¡½ºÆнº¸¦ ÀÌ¿ëÇÑ ÄÄÆÄÀÏÀ» ½ÃµµÇϱâ À§ÇÑ ½ºÅ©¸³Æ®ÀÌ´Ù -->
À§ÀÇ »ùÇÿ¡¼´Â ºÒÇÊ¿äÇÑ classpath°¡ °è¼Ó ¾²¿©Áö°í ÀÖ´Ù.
¾ÈÁÁÀº ¹æ¹ýÀ̹ǷΠ¾Æ·¡¿Í°°ÀÌ ´Ù½Ã ¾µ¼ö ÀÖ´Ù.
<project ... >
<path id="project.class.path">
<----- path-id¸¦ ÁöÁ¤Çسõ°í¼ ¾Æ·¡ÂÊ¿¡¼ Æнº¸¦ ÂüÁ¶Çϵµ·Ï ÇÑ´Ù.
<pathelement location="lib/"/>
<pathelement path="${java.class.path}/"/>
<pathelement path="${additional.path}"/>
<classpath refid="project.class.path"/>
<--- À§ÀÇ ref-id·Î ¼³Á¤ÇØ ³õÀº Æнº¸¦ ÂüÁ¶ÇÏ¿© »ç¿ëÇϵµ·Ï ÇÑ´Ù.
<classpath refid="project.class.path"/>
*************************************
*************************************
--ÇöÀç µð·ºÅ丮 ±¸¼ºÀ» º¸µµ·Ï ÇÏÀÚ.
WeblogicBuildTest/src/Echo.java
WeblogicBuildTest/src/EchoHome.java
WeblogicBuildTest/src/EchoEJB.java
WeblogicBuildTest/src/EchoClient.java
--¾Æ·¡ÀÇ ³»¿ëÀ» ÀÌ¿ëÇÏ¿© weblogicaux.jar¸¦ ÀÌ¿ëÇÏ¿© build¸¦ ½ÃµµÇÑ´Ù.
-- ÄÄÆÄÀÏ¿¡ ¼º°øÇϸé ÇöÀç Ŭ·¡½ºÆÄÀϵéÀ» ÀÌ¿ëÇÏ¿© MyProject-ÇöÀ糯¥.jarÆÄÀÏ·Î ¹´Â´Ù
µµ½º¸í·É : ant -Dweblogic.classpath=c:weblogiclibweblogicaux.jar
<project name="MyProject" default="dist" basedir=".">
<!-- set global properties for this build -->
<property name="src" value="src"/>
<property name="build" value="build"/>
<property name="dist" value="dist"/>
<property name="weblogicaux.jar" value="${weblogic.home}/lib/weblogicaux.jar" />
<!-- Create the time stamp -->
<!-- Create the build directory structure used by compile -->
<target name="compile" depends="init">
<!-- Compile the java code from ${src} into ${build} -->
<javac srcdir="${src}" destdir="${build}"
classpath="${weblogic.classpath}:${build}"
<target name="dist" depends="compile">
<!-- Create the distribution directory -->
<mkdir dir="${dist}/lib"/>
<!-- Put everything in ${build} into the MyProject-${DSTAMP}.jar file -->
<jar jarfile="${dist}/lib/MyProject-${DSTAMP}.jar" basedir="${build}"/>
<!-- Delete the ${build} and ${dist} directory trees -->
==================================================
==================================================
==================================================
==================================================
exclusion°ú inclusion¿¡ ´ëÇÑ ÆÐÅÏÀ» Á¤ÀÇ ÇÒ¼ö ÀÖÀ¸¸ç, ¿ì¸®°¡ ÀϹÝÀûÀ¸·Î »ç¿ëÇÏ´Â
wild card *, ?¸¦ ÀÌ¿ëÇÏ¿© Ç¥ÇöÇÒ ¼ö ÀÖ´Ù.
*.java ´Â .javaÀÇ È®ÀåÀÚ¸¦ °¡Áø ¸ðµç ÆÄÀÏÀ» Ç¥ÇöÇÑ´Ù.
*´Â ÆÄÀÏ¿¡ ´ëÇÑ ³»¿ëÀ» º¸¿©ÁÖ°íÀÚ ÇÒ¶§ »ç¿ëÇÏ´Â ÆÐÅÏÀ̸ç
**´Â µð·ºÅ丮ÀÇ À̸§À» ÀÌ¿ëÇÏ¿© Ç¥ÇöÇÒ¼ö ÀÖ°Ô²û ¸¸µå´Â È®ÀåÀÚ À̸§ÀÌ´Ù.
¶ÇÇÑ 0°³ ÀÌ»óÀÇ µð·ºÅ丮¸¦ Ç¥ÇöÇÏ°íÀÚ ÇÒ¶§ ÀÌÆÐÅÏÀ» »ç¿ëÇÏ°Ô µÈ´Ù.
¿¹¸¦ µé¾î /test/**´Â test¶ó´Â µð·ºÅ丮 ¾ÈÀÇ ÆÄÀÏ ¹× ´Ù¸¥
¼ºêµð·ºÅ丮¸¦ ¸ðµÎ Æ÷ÇÔÇÏ´Â wildcard·Î¼ µ¿À۵ȴÙ.
org/apache/jakarta/tools/ant/CVS/Entries
But not:
org/apache/CVS/foo/bar/Entries (foo/bar/ ºÎºÐÀÌ ÀÏÄ¡ÇÏÁö ¾Ê´Â´Ù.)
--------------------------------------------
org/apache/jakarta/tools/ant/docs/index.html
org/apache/jakarta/test.xml
But not:
--------------------------------------------
org/apache/jakarta/tools/ant/CVS/Entries
But not:
org/apache/CVS/foo/bar/Entries
---------------------------------------------
srcÀÇ ÇÏÀ§ µð·ºÅ丮¿¡¼ **/images/* ÆÐÅÏ¿¡ Àû¿ëµÇ´Â °ÍÀ» ¸ðµÎ º¹»çÇÏ¿© distµð·ºÅ丮·Î
º¹»çÇÑ´Ù. (ÇöÀç µð·ºÅ丮¿¡ ÀÖ´Â ¸ðµç *.gifÀÎ ÆÄÀÏÀº Á¦¿ÜÇϱ¸ ¿Å±ä´Ù.
*************************************
*************************************
»õ·Î¿î FilesetÀ̳ª fileÀ» ÀÌ¿ëÇÏ¿© ÆÄÀÏ/µð·ºÅ丮·Î Ä«ÇÇÇÒ¼ö ÀÖ´Ù.
file -- Ä«ÇÇÇÒ ÆÄÀÏÀ» ÁöÁ¤ÇÑ´Ù. Çϳª ¶Ç´Â ÇϳªÀÌ»óÀÇ file or filesetÀ» ÁöÁ¤ÇØ¾ß ÇÑ´Ù.
preservelastmodified -- ¿øº»ÆÄÀÏ°ú °°À» °æ¿ì Ä«ÇǸ¦ ½ÃµµÇÑ´Ù.
ÃÖÁ¾ ¼öÁ¤º»°ú ÇöÀç ´ë»óº»ÀÌ °°¾Æ¾ß ÇÑ´Ù.(default : no)
tofile -- Ä«ÇǵǾîÁú ÆÄÀÏÀ̸§À» ÁöÁ¤ÇÑ´Ù. tofile or todirÀÌ »ç¿ëµÇ¾îÁø´Ù.
filesetÀ» »ç¿ëÇÏ°Ô µÈ´Ù¸é todir·Î¸¸ »ç¿ëµÇ¾îÁ®¾ß ÇÑ´Ù.
todir -- Ä«ÇǵǾîÁú µð·ºÅ丮¸¦ ¼³Á¤ÇÑ´Ù
overwrite -- ´ë»óµð·ºÅ丮¿¡ ÇØ´ç ÆÄÀÏÀÌ Á¸ÀçÇÒ°æ¿ì overwriteÇÒÁö »õ·Ó°Ô ¸¸µéÁö¸¦ °áÁ¤ÇÑ´Ù.
Defaults to "no".
filtering -- Ä«ÇǵµÁß¿¡ ÇÊÅ͸¦ »ç¿ëÇÏ¿© Ä«ÇǸ¦ ÇÒ°ÍÀÎÁö¸¦ °áÁ¤ÇÑ´Ù. Defaults to "no".
flatten -- ¼Ò½ºµð·ºÅ丮ÀÇ ÇÏÀ§±¸Á¶¸¦ ¹«½ÃÇÏ°í ¸ðµç ³»¿ëÀ» Çѵð·ºÅ丮·Î¸¸ º¹»çÇÑ´Ù. Defaults to "no".
includeEmptyDirs -- FileSet¿¡ Æ÷ÇÔµÈ ºó µð·ºÅ丮µµ Ä«ÇÇÇÒ¼ö ÀÖµµ·Ï ÇÑ´Ù. Defaults to "yes".
------------------------------------------------
<copy file="myfile.txt" tofile="mycopy.txt"/>
ÆÄÀÏÀ» µð·ºÅ丮·Î º¹»çÇϱâ
<copy file="myfile.txt" todir="../some/dir/tree"/>
Çѵð·ºÅ丮¸¦ ´Ù¸¥ µð·ºÅ丮·Î º¹»çÇϱâ
<copy todir="../new/dir">
src_dir¹ØÀÇ .javaÆÄÀÏÀ» Á¦¿ÜÇÑ °ÍÀ» ../dest/dirµð·ºÅ丮·Î º¹»ç
<copy todir="../dest/dir" >
<exclude name="**/*.java"/>
<copy todir="../dest/dir" >
<fileset dir="src_dir" excludes="**/*.java"/>
µð·ºÅ丮¿¡ ÀÖ´Â ÆÄÀϵéÀ» ´ë»óÀ¸·Î È®ÀåÀÚ bak¸¦ ºÙ¿©¼ º¹»çÇϵµ·Ï ÇÑ´Ù.
<copy todir="../backup/dir" >
<fileset dir="src_dir" />
<mapper type="glob" from="*" to="*.bak"/>
¿øº» µð·ºÅ丮ÀÇ TITLEÀ̶ó´Â ¹®ÀÚ¸¦ Foo Bar·Î ´ëÄ¡ÇÏ¿© º¹»çÇÑ´Ù.
<copy todir="../backup/dir" >
<fileset dir="src_dir" />
<filter token="TITLE" value="Foo Bar" />
À¯»ç ű׷μ copydir, copyfileűװ¡ ÀÖ´Ù.
*************************************
*************************************
ÇϳªÀÇ ÆÄÀÏÀ» Áö¿ì°Å³ª, ¼ºêµð·ºÅ丮 ¹× ÇϳªÀÌ»óÀÇ filesetµîÀ» ÀÌ¿ëÇÏ¿© Áö¿ï¼ö
Parameter´Â CopyFile°ú À¯»çÇÏ´Ù. Ãß°¡°¡ µÈ°ÍÀ» º¸µµ·Ï ÇÏÀÚ.
failonerror -- ÆÄÀÏ »èÁ¦¿¡ ½ÇÆÐÇßÀ» °æ¿ì, build¸¦ ¸ØÃß°í ÇöÀçÀÇ ½ºÅ©¸°¿¡ ÇØ´ç »çÇ×À» º¸¿©ÁÖµµ·Ï ÇÑ´Ù.
includeEmptyDirs -- ºóµð·ºÅ丮±îÁö ¸ðµÎ »èÁ¦Çϵµ·Ï ÇÑ´Ù.
<delete file="/lib/ant.jar"/>
/lib/ant.jar À» »èÁ¦ÇÑ´Ù.
libµð·ºÅ丮ÀÇ ¸ðµç ÆÄÀÏ ¹× ¼ºêµð·ºÅ丮¸¦ °¡Â÷¾øÀÌ »èÁ¦ÇÑ´Ù.
<fileset dir="." includes="**/*.bak"/>
ÇöÀç µð·ºÅ丮¹× ÇÏÀ§µð·ºÅ丮¿¡¼ bakÀÇ È®ÀåÀÚ¸¦ °¡Áø ÆÄÀÏÀ» ¸ðµÎ »èÁ¦ÇÑ´Ù.
<delete includeEmptyDirs="true" >
buildÀÚ½ÅÀ» Æ÷ÇÔÇÏ°í ÀÖ´Â µð·ºÅ丮ÀÌ¸é ¸ðµç ÆÄÀÏ°ú ÇÏÀ§µð·ºÅ丮¸¦ »èÁ¦Çϵµ·Ï ÇÑ´Ù.
*************************************
*************************************
ÇöÀç ½Ã½ºÅÛ ÄܼÖÀ̳ª ÆÄÀÏ·Î ¸Þ½ÃÁö¸¦ Ãâ·ÂÇϵµ·Ï ÇÑ´Ù.
message -- º¸¿©ÁÙ ¸Þ½ÃÁö¸¦ ±â¼úÇÑ´Ù.
file -- ÀÌ ¸Þ½ÃÁö¸¦ ÇØ´çÆÄÀÏ·Î Ãâ·ÂÇϵµ·Ï ÇÑ´Ù.(default no)
append -- ÇöÀç ÆÄÀÏÀÌ Á¸ÀçÇÏ°íÀÖÀ¸¸é Ãß°¡½ÃÅ°´Â ¸ðµå¸¦ ¼³Á¤ÇÑ´Ù.
<echo message="Hello world"/>
<echo>
¿äºÎºÐÀº ÇØ´ç Äֿܼ¡ ³ª¿À´Â ±ÛÀÚÀÔ´Ï´Ù.!!! ¹Ùº¸¾ß~~ ¤»¤»
*************************************
*************************************
ÇØ´ç task¸¦ ÀÌ¿ëÇÏ¿© jarÆÄÀÏÀ» »ý¼ºÇÒ¼öµµ ÀÖ´Ù.
ZIPÆÄÀÏÀ» ¹´Â task°ú °°Àº Çü½ÄÀ¸·Î µ¿ÀÛÇÏ¿© °¢°¢ÀÇ ¹ÀÏ ÆÄÀÏÀ̳ª µð·ºÅ丮 ¸ðµÎ¸¦ ÁöÁ¤ÇÒ¼ö ÀÖ´Ù.
<jar> </jar>tag¿¡ ¹Ýµå½Ã µé¾î°¡¾ßÇÏ´Â ¼Ó¼ºÀº jarfileÀ̶õ ű׷μ ÇØ´ç jarÆÄÀÏÀÇ À̸§À» ÁöĪÇÑ´Ù.
jarfile -- »ý¼ºÇÒ jar-file
basedir -- jar-fileÀ» »ý¼ºÇÒ ±âº»µð·ºÅ丮¸¦ ÁöÁ¤. Default No
compress -- ÀúÀåµÈ µ¥ÀÌÅͻӸ¸ ¾Æ´Ï¶ó ¾ÐÃàµÈ ÇüűîÁö ¸ðµÎ ¹´Â´Ù, No
encoding -- ¹À» ÆÄÀÏÀÇ character encoding setÀ» ÁöÁ¤ÇÑ´Ù.À¢¸¸ÇÏ¸é ¹Ù²ÙÁö ¸»±â
filesonly -- ¿£Æ®¸®¿¡ µé¾îÀÖ´Â ÆÄÀϸ¸ ¹´Â´Ù. No
includes -- ,(comma)·Î ºÐ¸®µÇ¾î ÀÖ´Â ÆÐÅÏÆÄÀÏ ¸®½ºÆ®¸¦ ¹Ýµå½Ã Æ÷ÇÔÇÏ¿© ¹´Â´Ù. No
includesfile -- °¢°¢¿¡ ÆÐÅÏ¿¡ ÇØ´çÇÏ´Â ÆÄÀÏÀ» ÀÌ¿ëÇÏ¿© ¹µµ·Ï ÇÑ´Ù. No
excludes -- ÆÄÀÏÆÐÅÏ¿¡ ´ëÇÑ ÆÄÀÏ Á¦¿ÜÇÏ°í ¹´Â´Ù. No
defaultexcludes -- defaultexclude¸¦ »ç¿ëÇÒÁö ¾ÈÇÒÁö¸¦ °áÁ¤ÇÑ´Ù. No
manifest -- manifestÆÄÀÏÀ» »ç¿ëÇϵµ·Ï ÇÑ´Ù. No
update -- ¸¸¾à¿¡ ÇØ´ç jarÆÄÀÏÀÌ Á¸ÀçÇÑ´Ù¸é updateÇÒ°ÍÀÎÁö overwriteÇÒ°ÍÀÎÁö¸¦ °áÁ¤ÇÑ´Ù. No
whenempty -- ÆÐÅÏ¿¡ ¸ÅÇεǴ ÆÄÀÏÀÌ ¾ø´õ¶óµµ µ¿ÀÛÀ» ÇÒ°ÍÀÎÁö¸¦ °áÁ¤ÇÑ´Ù. No
<jar jarfile="${dist}/lib/app.jar" basedir="${build}/classes"/>
${build}/classesµð·ºÅ丮¿¡ ÀÖ´Â ¸ðµç ÆÄÀϵéÀ» ${dist}/lib µð·ºÅ丮ÀÇ app.jar¶õ À̸§À¸·Î ¾ÐÃàÇÑ´Ù.
-----------------------------------------------------------
<jar jarfile="${dist}/lib/app.jar"
basedir="${build}/classes"
${build}/classesµð·ºÅ丮ÀÇ Test.class¸¦ Á¦¿ÜÇÑ ¸ðµç ÆÄÀϵéÀ»
${dist}/libµð·ºÅäÀÇ app.jarÆÄÀÏÀÇ À̸§À¸·Î ¾ÐÃàÇÑ´Ù.
------------------------------------------------------------
<jar jarfile="${dist}/lib/app.jar"
basedir="${build}/classes"
includes="mypackage/test/**"
${build}/classesµð·ºÅ丮¿¡ ÀÖ´Â ¸ðµç ÆÄÀϵéÀ» ${dist}/lib µð·ºÅ丮ÀÇ app.jar¶õ À̸§À¸·Î ¹´Â´Ù.
´Ù ¹´Â°ÍÀ̾ƴ϶ó ${build}/classes/mypackage/test¹ØÀÇ ÆÄÀϸ¸À» »ç¿ëÇϸç Test.class¸¦ Á¦¿ÜÇÑ´Ù.
<jar jarfile="${dist}/lib/app.jar">
<fileset dir="${build}/classes"
<fileset dir="${src}/resources"/>
${build}/classes¿Í ${src}/resourceµð·ºÅ丮¸¦ app.jar¶ó´Â À̸§À¸·Î ÇÔ²² ¹´Âµ¥
Test.class¸¦ Á¦¿ÜÇÏ¿© ¹´Â´Ù
--------------------------------------------------------------------------------
*************************************
*************************************
ÀÌÁ¦ tag¸¦ ÀÌ¿ëÇÑ java¸í·ÉÀ» ½ÇÇà½ÃÄѺ¸µµ·Ï ÇÏÀÚ.
¿ì¼± ÇØ´ç tag¾È¿¡ µé¾î°¡´Â parameterºÎÅÍ È®ÀÎÇØ º¸µµ·Ï ÇÏÀÚ.
ÇÑ°¡Áö Á¶½ÉÇØ¾ß ÇÒ°ÍÀÌ Àִµ¥ ÇÁ·Î±×·¥ÄÚµùÁß¿¡ System.exit()ºÎºÐÀ» Àß ½á¾ß ÇÑ´Ù
¸¸¾à ±×°ÍÀ» ½á¹ö¸®°Ô µÇ¸é ant¶ÇÇÑ °°Àº vm»ó¿¡¼ µ¿ÀÛÁßÀ̹ǷΠant±îÁö ºüÁ®³ª¿Í¹ö¸®´Â
classname -- ½ÇÇà½Ãų Àڹ٠Ŭ·¡½º¸íÀ» ±â¼úÇÑ´Ù. jar¶Ç´Â class nameÀÌ µÉ¼ö ÀÖ´Ù.
jar -- ½ÇÇà½Ãų jarÆÄÀÏÀÇ À§Ä¡¸¦ Ç¥½ÃÇÑ´Ù.
¸¸¾à ÀÌ ¿É¼ÇÀÌ ¼±ÅõǾî Áø´Ù¸é ¹Ýµå½Ã ForkÀÇ ¼Ó¼ºÀ» true·Î ¸¸µé¾î¾ß ÇÑ´Ù.
args -- ½ÇÇàµÇ¾îÁú Ŭ·¡½ºÀÇ argument¸¦ ÁöÁ¤ÇÑ´Ù. deprecateµÇ¾úÀ¸¸é ÇöÀç´Â <arg>ű׸¦ »ç¿ëÇÑ´Ù. No
classpath -- »ç¿ëÇÒ Å¬·¡½ºÆнº¸¦ ÁöÁ¤ÇÑ´Ù. No
classpathref -- Ŭ·¡½ºÆнº¸¦ »ç¿ëÇϴµ¥ PATH¿¡ Á¤ÀǵǾîÁø reference¸¦ ÀÌ¿ëÇÑ´Ù. No
fork -- ´Ù¸¥ vm»ó¿¡¼ Ŭ·¡½º¸¦ triggerÇÏ°í ½Í´Ù¸é ¼³Á¤ÇÑ´Ù. No
jvm -- JVM¿¡ ´ëÇÑ option command¸¦ »ç¿ëÇÑ´Ù. fork¿É¼ÇÀÌ ºñÈ°¼ºÈ µÇ¾úÀ¸¸é ¹«½ÃµÈ´Ù. No
jvmargs -- forkµÈ VM¿¡ ´ëÇÑ argument¸¦ »ç¿ëÇÑ´Ù. deprecatedµÆÀ¸¸ç <jvmarg> ¸¦ »ç¿ëÇÑ´Ù. No
maxmemory -- forkµÈ vm¿¡ ´ëÇÑ ÃÖ´ë ¸Þ·Î¸®°ªÀ» ÇÒ´çÇÑ´Ù. No
failonerror -- 0ÀÌ ¾Æ´Ñ ´Ù¸¥ returncode°¡ ¿À°Ô µÇ¸é build process¸¦ ÁßÁöÇÑ´Ù.
¹Ýµå½Ã fork°¡ trueÀ϶§¸¸ »ç¿ë°¡´ÉÇÏ´Ù. No
dir -- The directory to invoke the VM in. No
output -- ÁöÁ¤µÈ ÆÄÀÏÀ» outputÀ¸·Î »ç¿ëÇÑ´Ù. No
<java classname="test.Main" >
<pathelement location="test.jar"/>
<pathelement path="${java.class.path}"/>
<java classname="test.Main"/>
<java classname="test.Main" fork="yes" >
<sysproperty key="DEBUG" value="true"/>
<jvmarg value="-Xrunhprof:cpu=samples,file=log.txt,depth=3"/>
*************************************
*************************************
javac¸¦ ÀÌ¿ëÇÏ¿© ÀÚ¹ÙÇÁ·Î±×·¥À» ÄÄÆÄÀÏÇÒ ¼ö ÀÖµµ·Ï Çϴ ű׷μ °¢Á¾ ¿É¼ÇµéÀÌ ÀÌÂÊ¿¡ µé¾î°¡°Ô µÈ´Ù.
srcdir -- ÄÄÆÄÀÏ´ë»óÀÇ ÀÚ¹ÙÆÄÀϵéÀÇ À§Ä¡¸¦ ³ªÅ¸³½´Ù.
destdir -- compileµÈ Ŭ·¡½º ÆÄÀϵéÀÌ µé¾î°¡°ÔµÉ µð·ºÅ丮¸¦ ÁöĪÇÑ´Ù. No
includes -- ,(comma)·Î ºÐ¸®µÈ ÆÄÀÏÀÇ ÆÐÅÏÀ» ÀÌ¿ëÇÏ¿© Æ÷ÇÔµÈ ÆÄÀϵéÀ» ¸ðµÎ ÄÄÆÄÀÏÇÑ´Ù. No
includesfile -- includeÆÐÅÏ¿¡ ¸í¸íµÈ ÆÄÀÏÀ» Æ÷ÇÔÇÏ¿© compileÇÑ´Ù. No
excludes -- excludeÆÐÅÏ¿¡ ¸í¸íµÈ Á¦¿ÜÀ» Æ÷ÇÔÇÏ¿© ¸ðµÎ compileÇÑ´Ù. No
excludesfile -- excludeÆÐÅÏ¿¡ ¸í¸íµÈ Á¦¿ÜÀ» Æ÷ÇÔÇÏ¿© compileÇÑ´Ù. No
defaultexcludes -- default excludes¸¦ »ç¿ëÇÏ¿© compileÇÑ´Ù. No
classpath -- Ŭ·¡½º Æнº¸¦ »ç¿ëÇÒ °æ¿ì¿¡ ±â¼úÇÑ´Ù. No
bootclasspath -- bootstrap class fileÀÇ À§Ä¡¸¦ ±â¼úÇÑ´Ù. No
classpathref -- PATH reference¿¡ ÁÖ¾îÁø Ŭ·¡½ºÆнº¸¦ »ç¿ëÇÏ¿© compileÇÑ´Ù. No
bootclasspathref -- PATH reference¿¡ ÁÖ¾îÁø bootstrap Ŭ·¡½ºÆнº¸¦ »ç¿ëÇÏ¿© compileÇÑ´Ù. No
extdirs -- ¼³Ä¡µÈ extensionÀÇ À§Ä¡. No
encoding -- source file encoding. No
nowarn -- compiler·Î -nowarn¿É¼ÇÀ» Àü´ÞÇÑ´Ù. No
debug -- compile time debug¸ðµå·Î ¼³Á¤ÇÑ´Ù No
optimize -- optimize¿É¼ÇÀ» »ç¿ëÇÑ´Ù. no
deprecation -- deprecation¿É¼ÇÀ» »ç¿ëÇÑ´Ù. No
target -- ¸í½ÃµÈ VMÀ» »ç¿ëÇÏ¿© classÆÄÀÏÀ» »ý¼ºÇϵµ·Ï ÇÑ´Ù. No
verbose -- Ãâ·ÂÀ» verbose¸ðµå·Î ¼³Á¤ÇÑ´Ù. No
depend -- dependenty-tracking compiler¸ðµå¸¦ »ç¿ëÇÑ´Ù. No
includeAntRuntime -- Ant run-time lib¸¦ Æ÷ÇÔÇÏ¿© compileÇÑ´Ù. default = yes, required No
includeJavaRuntime -- ½ÇÇàµÇ´Â VMÀ¸·ÎºÎÅÍ run-time lib¸¦ Æ÷ÇÔÇÏ¿© ÄÄÆÄÀÏÇÑ´Ù. defaults to no. Required No
fork -- ¿ÜºÎÀÇ JDK compiler¸¦ »ç¿ëÇÏ¿© javac¸¦ ¼öÇàÇÑ´Ù. defaults to no. required No
memoryInitialSize -- VM»óÀÇ Ãʱ⠸޸𸮠»çÀÌÁ ¼³Á¤ÇÑ´Ù. (examples: 83886080, 81920k, or 80m) , required No
memoryMaximumSize -- VM»óÀÇ ÃÖ´ë ¸Þ¸ð¸® »çÀÌÁ Á¤ÇÑ´Ù. externally javacÀÏ °æ¿ì »ç¿ëµÇ¸é ´Ù¸¥°æ¿ì´Â ¹«½ÃµÈ´Ù.
(examples: 83886080, 81920k, or 80m) No
failonerror -- ÄÄÆÄÀÏ ¿¡·¯°¡ ¹ß»ýÇßÀ» °æ¿ì °è¼Ó ÄÄÆÄÀÏÀ» ½ÃµµÇÒ°ÍÀÎÁö¸¦ °áÁ¤. defaults to true. required No
source -- command line switch·Î -source¸¦ »ç¿ëÇÑ´Ù. No
${src} directory¿¡ ÀÖ´Â ¸ðµç .javaÆÄÀÏÀ» xyz.jar¸¦ ÀÌ¿ëÇÏ¿© compileÇÑÈÄ debug Á¤º¸´Â ¿¬ »óȲ¿¡¼ buildµð·ºÅ丮¿¡
classÆÄÀϵéÀ» À§Ä¡½ÃŲ´Ù.
-------------------------------------------------------------------------
includes="mypackage/p1/**,mypackage/p2/**"
excludes="mypackage/p1/testpackage/**"
${src} directoryÀÇ ÆÄÀϵéÀ» ÄÄÆÄÀÏÇϴµ¥ Á¶°ÇÀº xyz.jar¸¦ Ŭ·¡½ºÆнº·Î ÀÌ¿ëÇÏ°í, mypackage/p1/**,mypackage/p2/**ÆÐÅÏÀ»
µû¸£´Â ¼Ò½º(.java)¸¦ Æ÷ÇÔÇÏ°í, mypackage/p1/testpackage/**´Â ÄÄÆÄÀÏ ´ë»ó¿¡¼ Á¦¿ÜµÈ´Ù.
<javac srcdir="${src}:${src2}"
includes="mypackage/p1/**,mypackage/p2/**"
excludes="mypackage/p1/testpackage/**"
2°³ÀÇ source path¸¦ »ç¿ëÇÏ¿© compileÇϵµ·Ï ÇÑ´Ù. ³ª¸ÓÁö ¹æ¹ýÀº À§ÀÇ ¹æ¹ý°ú µ¿ÀÏÇÏ´Ù.
À§ÀÇ ¹æ¹ýÀº ¾Æ·¡¿Í °°ÀÌ À籸¼ºµÇ¾îÁú¼ö ÀÖ´Ù.
<javac destdir="${build}"
<include name="mypackage/p1/**"/>
<include name="mypackage/p2/**"/>
<exclude name="mypackage/p1/testpackage/**"/>