±â´É ¹× Ç÷¯±×ÀÎ »ç¿ëÀÚ Á¤ÀÇ ºôµå ´Ü°è
3.2ÀÇ »õ·Î¿î ±â´ÉÀº ±â´É ¶Ç´Â Ç÷¯±×ÀÎÀÌ »ç¿ëÀÚ Á¤ÀÇ ´Ü°è¸¦ °íÀ¯ÇÑ
ºôµå·Î ÄÁÆ®¸®ºä¼ÇÇÒ ¼ö ÀÖ´Â ±â´ÉÀÔ´Ï´Ù. ÀÌ·¯ÇÑ
»ç¿ëÀÚ Á¤ÀÇ ´Ü°è´Â ÄÄÆÄÀÏ ÈÄ ¹ÙÀÌÆ®-ÄÚµå ¼öÇà,
¹®¼ÈÇÒ µµ¿ò¸» ÆÄÀÏ »öÀÎÈ ¶Ç´Â ¿¹ºñ ÆÄÀÏÀÇ
¹øµé º¹»ç µî°ú °°Àº ÀÛ¾÷¿¡ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
»ç¿ëÀÚ Á¤ÀÇ ´ë»óÀ» »ç¿ëÇÏ·Á¸é ±â´É ¶Ç´Â Ç÷¯±×ÀÎÀÌ
ÇØ´ç build.properties ÆÄÀÏ¿¡ customBuildCallbacks
Ư¼ºÀ» Á¤ÀÇÇØ¾ß ÇÕ´Ï´Ù. ÀÌ Æ¯¼º °ªÀº »ç¿ëÀÚ Á¤ÀÇ
´ë»óÀ» Æ÷ÇÔÇÏ¸ç ±â´É/Ç÷¯±×ÀÎÀÇ ·çÆ®¿¡ »ó´ëÀûÀÎ
xml ÆÄÀÏÀÇ À§Ä¡ÀÔ´Ï´Ù. Áö¿øµÇ´Â »ç¿ëÀÚ Á¤ÀÇ ´ë»óÀ»
Æ÷ÇÔÇÏ´Â customBuildCallbacks.xml
ÅÛÇø®Æ®°¡ °¢°¢
org.eclipse.pde.build/templates/plugins ¹×
org.eclipse.pde.build/templates/features¿¡ Á¦°øµË´Ï´Ù. ÀÌ
ÅÛÇø®Æ®´Â ±â´É/Ç÷¯±×Àο¡ º¹»çÇÒ ¼ö ÀÖÀ¸¸ç Çʿ信 µû¶ó ¼öÁ¤ÇÒ
¼ö ÀÖ½À´Ï´Ù. »ç¿ëÀÚ Á¤ÀÇ ´ë»óÀº Subant Ÿ½ºÅ©
¹× failonerror="false"¸¦ »ç¿ëÇÏ¿© È£ÃâµË´Ï´Ù. À̸¦
ÅëÇØ »ç¿ëÀÚ Á¤ÀÇ XML ÆÄÀÏ¿¡ ƯÁ¤ ´ë»óÀÌ Æ÷ÇÔµÇÁö
¾Ê°Å³ª ¿À·ù°¡ ¹ß»ýÇÏ´Â °æ¿ì¿¡µµ ºôµå°¡ °è¼ÓµÉ ¼ö ÀÖ½À´Ï´Ù.
Ç÷¯±×ÀÎ
»ý¼ºµÈ build.xmlÀº Ç÷¯±×ÀÎÀ» ºôµåÇÏ¸ç Æ¯Á¤ Ÿ½ºÅ©¸¦
¼öÇàÇÏ´Â ¿©·¯ ´ë»óÀ» Æ÷ÇÔÇÕ´Ï´Ù. PDE ºôµå¸¦ »ç¿ëÇϸé
Ç÷¯±×ÀÎÀÌ Æ¯Á¤ Ÿ½ºÅ© ÀüÈÄ¿¡ È£ÃâµÉ »ç¿ëÀÚ Á¤ÀÇ »çÀü ¹×
»çÈÄ ´ë»óÀ» Á¦°øÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ¹Ì Á¤ÀÇµÈ Ant
Ư¼º»Ó¸¸ ¾Æ´Ï¶ó °¢ »ç¿ëÀÚ Á¤ÀÇ ´ë»ó¿¡µµ ¿©·¯ ƯÁ¤ Ư¼ºÀÌ
Àü´ÞµÉ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ´ë»óÀº »ç¿ëÀÚ Á¤ÀÇ ÄݹéÀ» Áö¿øÇÕ´Ï´Ù.
- build.jars:
build.jars ´ë»óÀº ÀÌ ¹øµé¿¡ ´ëÇØ ºôµåµÉ °¢ ÄÄÆÄÀÏ
´ë»óÀ» Â÷·Ê·Î È£ÃâÇÕ´Ï´Ù. ÀÌ ¹øµéÀº ¸ðµç
ÄÄÆÄÀÏ ´ë»óÀ» È£ÃâÇϱâ Àü ¶Ç´Â ±× ÈÄ¿¡ È£ÃâµÇ´Â pre.build.jars ¹× post.build.jars ´ë»óÀ» Áö¿øÇÕ´Ï´Ù.
»çÀü ¹× »çÈÄ ´ë»ó ¸ðµÎ
build.result.folder
Ư¼ºÀÌ Á¦°øµË´Ï´Ù. ÀÌ Æ¯¼ºÀº
ºôµå °á°ú°¡ º¹»çµÉ Æú´õÀÔ´Ï´Ù.
- ÄÄÆÄÀÏ ´ë»ó:
build.xmlÀº ºôµåµÇ´Â °¢ JARÀÇ ÄÄÆÄÀÏ ´ë»óÀ» Á¤ÀÇÇÕ´Ï´Ù(¿¹: ¹øµé ÀÚü ¶Ç´Â library.jarÀÇ @dot). °¢ ÄÄÆÄÀÏ ´ë»óÀº 3°³ÀÇ »ç¿ëÀÚ Á¤ÀÇ ÄݹéÀ» Áö¿øÇÕ´Ï´Ù.
- pre.<compilation target>: ¼Ò½º
ÆÄÀÏÀÌ ÄÄÆÄÀϵDZâ Àü¿¡ È£ÃâµË´Ï´Ù. ´ÙÀ½ Ư¼º°ú ÇÔ²² Á¦°øµË´Ï´Ù.
- target.folder: ÄÄÆÄÀϵÈ
Ŭ·¡½º ÆÄÀÏÀÌ
¹èÄ¡µÉ Æú´õ
- source.folder<N>: ÄÄÆÄÀϵÉ
¼Ò½º°¡ µé¾î ÀÖ´Â ¼Ò½º
Æú´õ(¿¹: source.folder1, source.folder2 µî)
- <compilation target>.classpath: ÄÄÆÄÀÏ¿¡
»ç¿ëµÉ Ŭ·¡½º °æ·Î¸¦
Æ÷ÇÔÇÏ´Â Ant °æ·Î ±¸Á¶¿¡ ´ëÇÑ
ÂüÁ¶ (¿¹: @dot.classpath, library.jar.classpath)
- post.compile.<compilation
target>: ¼Ò½º°¡ ÄÄÆÄÀϵÈ
ÈÄ Å¬·¡½º ÆÄÀÏÀÌ JAR 󸮵ǰųª ºôµå
°á°ú Æú´õ¿¡ º¹»çµÇ±â Àü¿¡ È£ÃâµË´Ï´Ù.
pre.<compilation
target> ´ë»ó°ú µ¿ÀÏÇÑ Æ¯¼ºÀÌ Á¦°øµË´Ï´Ù.
- post.<compilation target>:
°á°ú¸¦ ºôµå °á°ú Æú´õ¿¡ º¹»çÇÑ ÈÄ ÄÄÆÄÀÏ ´ë»ó
³¡¿¡¼ È£ÃâµË´Ï´Ù. ´ÙÀ½ Ư¼º°ú ÇÔ²² Á¦°øµË´Ï´Ù.
- jar.Location: ÄÄÆÄÀÏ
°á°ú¸¦ Æ÷ÇÔÇÏ´Â JAR ¶Ç´Â Æú´õ
- <compilation target>.classpath: ÄÄÆÄÀÏ¿¡
»ç¿ëµÈ Ŭ·¡½º °æ·Î¸¦ Æ÷ÇÔÇÏ´Â
Ant °æ·Î ±¸Á¶¿¡ ´ëÇÑ ÂüÁ¶
- build.sources: ÀÌ
´ë»óÀº °¢ ÄÄÆÄÀÏ ´ë»óÀÇ ¼Ò½º ZIPÀ»
ºôµåÇÕ´Ï´Ù. pre.build.sources ¹× post.build.sources ´ë»óÀ»
Áö¿øÇÕ´Ï´Ù. ÀÌ ´ë»ó¿¡´Â ¸ðµÎ Ư¼º
build.result.folder°¡ Á¦°øµË´Ï´Ù. ÀÌ
Æú´õ´Â ¼Ò½º ZIP ÆÄÀÏÀÌ º¹»çµÉ Æú´õÀÔ´Ï´Ù.
- gather.bin.parts:
ÀÌ ´ë»óÀº ºôµå °á°ú(¿¹: ¹øµé¿¡ Æ÷ÇԵǴ ´Ù¸¥
¸ðµç ÆÄÀÏ ¹× JAR)¸¦ ÃÖÁ¾ ´ë»ó µð·ºÅ丮¿¡ º¹»çÇÕ´Ï´Ù. ¶ÇÇÑ
Manifest ÆÄÀÏ¿¡¼ ¹öÀü ±ÔÁ¤ÀÚ°¡ ¹Ù²î´Â
´ë»óÀÔ´Ï´Ù(¹öÀü
±ÔÁ¤ÀÚ ÂüÁ¶). pre.gather.bin.parts ¹× post.gather.bin.parts ´ë»óÀ»
Áö¿øÇÕ´Ï´Ù. ´ÙÀ½°ú °°ÀÌ »çÀü ¹× »çÈÄ ´ë»ó¿¡ µÎ Ư¼ºÀÌ Á¦°øµË´Ï´Ù.
- build.result.folder: ºôµå
°á°ú°¡ µé¾î
ÀÖ´Â Æú´õ
- target.folder: ºôµå
°á°ú ¹× ºôµå ÄÁÅÙÃ÷°¡
º¹»çµÇ´Â ´ë»ó Æú´õ
- gather.sources: ÀÌ
´ë»óÀº ¹øµéÀÇ ¼Ò½º ZIP ÆÄÀÏÀ» ¼öÁýÇÕ´Ï´Ù. pre.gather.sources ¹× post.gather.sources ´ë»óÀ» Áö¿øÇÕ´Ï´Ù.
»çÀü ¹× »çÈÄ ´ë»ó¿¡ ¸ðµÎ
target.folder Ư¼ºÀÌ Á¦°øµË´Ï´Ù. ÀÌ
Ư¼ºÀº ¼Ò½º°¡ º¹»çµÇ´Â Æú´õÀÔ´Ï´Ù.
- gather.logs: ÀÌ
´ë»óÀº ºôµå¿¡¼ ·Î±× ÆÄÀÏÀ» ¼öÁýÇÕ´Ï´Ù. pre.gather.logs ¹× post.gather.logs¸¦ Áö¿øÇÕ´Ï´Ù.
»çÀü ¹× »çÈÄ ´ë»ó¿¡ ¸ðµÎ
destination.temp.folder°¡ Á¦°øµË´Ï´Ù. ÀÌ
Ư¼ºÀº ·Î±× ÆÄÀÏÀÌ º¹»çµÇ´Â Àӽà Æú´õÀÔ´Ï´Ù.
- clean: ÀÌ
´ë»óÀº Á¤¸®¸¦ ¼öÇàÇϸç pre.clean
¹× post.clean ´ë»óÀ» Áö¿øÇÕ´Ï´Ù.
»çÀü ¹× »çÈÄ ´ë»óÀÇ Æ¯¼ºÀº ´ÙÀ½°ú °°½À´Ï´Ù.
- plugin.destination: ÃÖÁ¾
¹øµéÀÌ º¹»çµÈ
Æú´õ
- build.result.folder: ºôµå
°á°ú°¡ º¹»çµÈ
Æú´õ
- temp.folder: °á°ú°¡
ÃÖÁ¾ ´ë»ó¿¡ º¹»çµÇ±â Àü¿¡
½ºÅ×ÀÌ¡µÈ Àӽà Æú´õ
±â´É
±â´É¿¡ ´ëÇØ »ý¼ºµÈ build.xmlÀº gather.bin.parts ´ë»ó¿¡
´ëÇÑ »ç¿ëÀÚ Á¤ÀÇ ºôµå Äݹ鸸 Áö¿øÇÕ´Ï´Ù. ÀÌ ´ë»óÀº
Æ÷ÇÔµÈ ¸ðµç ±â´É ¹× Ç÷¯±×ÀÎÀÇ gather.bin.parts ´ë»óÀ»
È£ÃâÇÕ´Ï´Ù. pre.gather.bin.parts ¹× post.gather.bin.parts¸¦ Áö¿øÇÕ´Ï´Ù. µÎ ´ë»ó ¸ðµÎ ´ÙÀ½ Ư¼º°ú ÇÔ²² Á¦°øµË´Ï´Ù.
- destination.temp.folder: Ç÷¯±×ÀÎÀÌ
º¹»çµÉ
µð·ºÅ丮
- feature.directory: ÀÌ
±â´ÉÀÇ ÆÄÀÏÀÌ
º¹»çµÉ µð·ºÅ丮