¼Ó¼º È®ÀåÁ¡À» »ç¿ëÇÏ¸é ¼Ó¼º ÀÛ¼º±â´Â ±âÈ£ À̸§À¸·Î ÀÚ½ÅÀÇ Æ¯¼º ±¸ÇöÀ» µî·ÏÇÑ ´ÙÀ½ ¼Ó¼ºÀ» ã¾Æ ±¸¼ºÇϱâ À§ÇØ ÀÛ¾÷°ø°£ ³»¿¡¼ »ç¿ëµÇ°Ô µË´Ï´Ù. ±âÈ£ À̸§Àº ¼Ó¼º È®ÀåÀÇ IDÀÔ´Ï´Ù. ¼Ó¼º È®ÀåÀ» Á¤ÀÇÇÒ °æ¿ì Àǹ̸¦ ½Äº°ÇÏ°í »ç¿ëÀÚ¿¡°Ô Á¦°øµÉ ¼öµµ ÀÖ´Â "name" ¼Ó¼º¿¡ ÀÐÀ» ¼ö ÀÖ´Â °ªÀ» Æ÷ÇÔ½ÃŰ½Ê½Ã¿À.
¼Ó¼ºÀº ´Ù¸¥ ¼Ó¼º°úÀÇ °ü°è Á¦ÇÑÁ¶°ÇÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù. "¼Ó¼º Áß Çϳª" Á¦ÇÑÁ¶°ÇÀº ÇØ´ç ÁýÇÕ¿¡ ¼ÓÇÑ ¼Ó¼º Çϳª¸¸ ƯÁ¤ÇÑ ½Ã°£¿¡ ÇÁ·ÎÁ§Æ®¿¡ Á¸ÀçÇÒ ¼ö ÀÖÀ½À» ÁöÁ¤ÇÕ´Ï´Ù. ÀÌ Á¦ÇÑÁ¶°ÇÀ» Àû¿ëÇÏ¸é ¼·Î ȣȯ °¡´ÉÇÏÁö ¾ÊÀº ¼Ó¼ºµéÀÌ »óÈ£ ¹èÁ¦µË´Ï´Ù. "Çʼö ¼Ó¼º" Á¦ÇÑÁ¶°ÇÀº ´Ù¸¥ ¼Ó¼º¿¡ ´ëÇÑ Á¾¼Ó¼ºÀ» ÁöÁ¤ÇÕ´Ï´Ù. ¼Ó¼ºÀÌ ÇÁ·ÎÁ§Æ®¿¡ Ãß°¡µÇ¸é ¸ðµç Çʼö Á¶°Çµµ Ãß°¡µÇ¾î¾ß ÇÕ´Ï´Ù. ¼Ó¼ºÀÌ ±¸¼ºµÇ°í ±¸¼º ÇØÁ¦µÉ ¶§´Â Ç×»ó Çʼö ¼Ó¼ºÀÌ ¸ÕÀú ±¸¼ºµÇ°í ³ªÁß¿¡ ±¸¼º ÇØÁ¦µË´Ï´Ù. ÀÌ ¶§¹®¿¡ ¼Ó¼º °£ÀÇ ¼øÈ¯Àû Á¾¼Ó¼ºÀº Çã¿ëµÇÁö ¾Ê½À´Ï´Ù.
¼Ó¼º Ãß°¡³ª Á¦°Å·Î ÀÎÇØ ÀÌÀü¿¡ ¸¸Á·µÇ¾ú´ø Á¦ÇÑÁ¶°ÇÀÌ À§¹ÝµÇ´Â °æ¿ì ¼Ó¼ºÀº ÇÁ·ÎÁ§Æ®¿¡ Ãß°¡µÇ°Å³ª ÇÁ·ÎÁ§Æ®¿¡¼ Á¦°ÅµÉ ¼ö ¾ø½À´Ï´Ù. ¼Ó¼ºÀÌ ÇÁ·ÎÁ§Æ®¿¡ ±¸¼ºµÇ¾îµµ ³ªÁß¿¡ Á¦ÇÑÁ¶°ÇÀÌ ¸¸Á·µÇÁö ¾Ê´Â °ÍÀÌ ¹ß°ßµÇ¸é ÇØ´ç ¼Ó¼º ¹× ÀÌ ¼Ó¼ºÀ» ¿ä±¸ÇÏ´Â ¸ðµç ¼Ó¼ºÀÌ »ç¿ë ºÒ°¡´ÉÀ¸·Î Ç¥½ÃµÇÁö¸¸ ÇÁ·ÎÁ§Æ®¿¡´Â ³²¾Æ ÀÖ½À´Ï´Ù. ¿¹¸¦ µé¸é ÀÌ·± »óȲÀº Çʼö ¼Ó¼ºÀÌ ¼³Ä¡¿¡¼ ´©¶ôµÉ °æ¿ì¿¡ ¹ß»ýÇÕ´Ï´Ù. ¼³Ä¡¿¡¼ ´©¶ôµÈ ¼Ó¼º ¹× Á¾¼Ó¼º ÁÖ±â¿Í °ü·ÃµÈ ¼Ó¼ºµµ »ç¿ë ºÒ°¡´ÉÀ¸·Î Ç¥½ÃµË´Ï´Ù.
¼Ó¼ºÀº ±¸¼ºÇÒ ÁõºÐ ÇÁ·ÎÁ§Æ® ºô´õµµ ÁöÁ¤ÇÕ´Ï´Ù. ÀÛ¾÷°ø°£Àº ÀÌ Á¤º¸¸¦ »ç¿ëÇÏ¿© ÇØ´ç ¼Ó¼ºÀÌ ºôµåµÇ´Â ÇÁ·ÎÁ§Æ®¿¡ Á¸ÀçÇÏ°í »ç¿ë °¡´ÉÇÒ ¶§¸¸ ºô´õ°¡ ½ÇÇàµÇµµ·Ï ÇÕ´Ï´Ù. ¼Ó¼ºÀÌ ÇÁ·ÎÁ§Æ®¿¡¼ Á¦°ÅµÇ¾úÁö¸¸ ¼Ó¼ºÀÇ ±¸¼º ÇØÁ¦ ¸Þ¼Òµå°¡ ÇØ´ç ºô´õ¸¦ Á¦°ÅÇÏÁö ¸øÇÑ °æ¿ì ÀÛ¾÷°ø°£Àº ½ºÆå¿¡¼ ÇØ´ç ºô´õ¸¦ ÀÚµ¿À¸·Î Á¦°ÅÇÕ´Ï´Ù. µÎ ¼Ó¼ºÀÌ ¸¶Å©¾÷¿¡¼ °°Àº ÁõºÐ ÇÁ·ÎÁ§Æ® ºô´õ¸¦ ÁöÁ¤ÇÏ´Â °ÍÀº Çã¿ëµÇÁö ¾Ê½À´Ï´Ù.
¼Ó¼º¿¡´Â ¶ÇÇÑ ¿¬°üµÈ ÇÁ·ÎÁ§Æ®¿¡¼ ¸µÅ©µÈ ÀÚ¿øÀÇ
ÀÛ¼ºÀ» ±ÝÁöÇÏ´Â ±â´Éµµ ÀÖ½À´Ï´Ù. allowLinking
¼Ó¼ºÀ» "false"·Î ¼³Á¤ÇÏ¿© ¼Ó¼ºÀº ¸µÅ©µÈ ÀÚ¿øÀÌ ÀÛ¼ºµÇÁö ¾Êµµ·Ï
¼±¾ðÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ ±â´ÉÀº
¸±¸®½º 2.1¿¡¼ »õ·Î ÀÛ¼ºµÇ¾ú½À´Ï´Ù.
<!ELEMENT extension (runtime , (one-of-nature | requires-nature | builder)* , options?)>
<!ATTLIST extension
point CDATA #REQUIRED
id CDATA #IMPLIED
name CDATA #IMPLIED>
<!ATTLIST run
class CDATA #REQUIRED>
<!ELEMENT parameter EMPTY>
<!ATTLIST parameter
name CDATA #REQUIRED
value CDATA #REQUIRED>
<!ELEMENT one-of-nature EMPTY>
<!ATTLIST one-of-nature
id CDATA #REQUIRED>
<!ELEMENT requires-nature EMPTY>
<!ATTLIST requires-nature
id CDATA #REQUIRED>
<!ELEMENT builder EMPTY>
<!ATTLIST builder
id CDATA #REQUIRED>
<!ELEMENT options EMPTY>
<!ATTLIST options
allowLinking (true | false) >
ÀÌ È®ÀåÀÌ ID°¡ "com.xyz.coolplugin"ÀÎ Ç÷¯±×Àο¡¼ Á¤ÀÇµÈ °æ¿ì ÀÌ ¼Ó¼ºÀÇ ¿ÏÀüÇÑ À̸§Àº "com.xyz.coolplugin.fireNature", "com.xyz.coolplugin.waterNature" ¹× "com.xyz.coolplugin.snowNature"ÀÔ´Ï´Ù.<extension id=
"fireNature"
name=
"Fire Nature"
point=
"org.eclipse.core.resources.natures"
>
<runtime>
<run class=
"com.xyz.natures.Fire"
/>
</runtime>
<one-of-nature id=
"com.xyz.stateSet"
/>
<options allowLinking=
"false"
/>
</extension>
<extension id=
"waterNature"
name=
"Water Nature"
point=
"org.eclipse.core.resources.natures"
>
<runtime>
<run class=
"com.xyz.natures.Water"
/>
</runtime>
<one-of-nature id=
"com.xyz.stateSet"
/>
</extension>
<extension id=
"snowNature"
name=
"Snow Nature"
point=
"org.eclipse.core.resources.natures"
>
<runtime>
<run class=
"com.xyz.natures.Snow"
>
<parameter name=
"installBuilder"
value=
"true"
/>
</run>
</runtime>
<requires-nature id=
"com.xyz.coolplugin.waterNature"
/>
<builder id=
"com.xyz.snowMaker"
/>
</extension>
Copyright (c) 2002, 2004 IBM Corporation and others.
All rights reserved. º» ÇÁ·Î±×·¥ ¹× º» ÇÁ·Î±×·¥¿¡ µ¿ºÀµÇ´Â ÀÚ·á´Â
º» ¹èÆ÷¹°¿¡ µ¿ºÀµÇ´Â ÀÏ¹Ý °ø¿ë ¶óÀ̼¾½º v1.0ÀÇ Á¶Ç׿¡ µû¶ó
http://www.eclipse.org/legal/cpl-v10.html¿¡¼
»ç¿ë °¡´ÉÇÕ´Ï´Ù.