Eclipse Ç÷§Æû Ç÷¯±×ÀÎ Manifest

¹öÀü 3.2 - 2006³â 5¿ù 9ÀÏ ÃÖÁ¾ °³Á¤ÆÇ

¾Æ·¡ÀÇ Manifest ¸¶Å©¾÷ Á¤ÀÇ¿¡¼­´Â ´Ù¾çÇÑ À̸§ ÁöÁ¤ ÅäÅ« ¹× ID¸¦ »ç¿ëÇÕ´Ï´Ù. ¸ðÈ£¼ºÀ» ¾ø¾Ö±â À§ÇØ ÀÌ·¯ÇÑ À̸§ ÁöÁ¤ ÅäÅ« ¹× ID¿¡´Â ¸î °¡Áö Á¦Ç° ±ÔÄ¢ÀÌ Àû¿ëµË´Ï´Ù(¾Æ·¡ ÅØ½ºÆ® ÂüÁ¶). ÀϹÝÀûÀ¸·Î ¸ðµç ID´Â ´ë¼Ò¹®ÀÚ¸¦ ±¸ºÐÇÕ´Ï´Ù.

SimpleToken := sequence of characters from ('a-z','A-Z','0-9','_')
ComposedToken := SimpleToken | (SimpleToken '.' ComposedToken)
QualifiedId := ComposedToken '.' SimpleToken
ExtensionId := SimpleToken | QualifiedId
ExtensionPointId := SimpleToken | QualifiedId
ExtensionPointReference := SimpleToken | QualifiedId

ÀÌ ÀýÀÇ ³ª¸ÓÁö ºÎºÐ¿¡¼­´Â plugin.xml ÆÄÀÏ ±¸Á¶¸¦ ÀÏ·ÃÀÇ DTD ´ÜÆíÀ¸·Î ¼³¸íÇÕ´Ï´Ù. plugin.dtd ÆÄÀÏ¿¡¼­´Â Àüü DTD Á¤ÀǸ¦ º¼ ¼ö ÀÖ½À´Ï´Ù.

<?xml encoding="US-ASCII"?>
<?eclipse version="3.2"?>
<!ELEMENT plugin (extension-point*, extension*)>

<plugin> ¿ä¼Ò´Â Manifest º»¹®À» Á¤ÀÇÇÕ´Ï´Ù. ÀÌ ¿ä¼Ò¿¡´Â Ç÷¯±×Àο¡ ÀÇÇØ Á¦°øµÇ´Â »õ È®ÀåÁ¡ÀÇ ¼±¾ð»Ó¸¸ ¾Æ´Ï¶ó ±â´ÉÀû È®ÀåÀÇ ±¸¼º(´Ù¸¥ Ç÷¯±×Àο¡¼­ Á¤ÀÇÇϰųª ÇØ´ç Ç÷¯±×Àο¡¼­ Á¦°øÇÏ´Â È®ÀåÁ¡À¸·Î ±¸¼º)ÀÌ ¼±ÅÃÀûÀ¸·Î Æ÷ÇԵ˴ϴÙ.

XML DTD »ý¼º ±ÔÄ¢ element*´Â ÇØ´ç ¿ä¼Ò°¡ 0°³ ÀÌ»ó ¹ß»ýÇÔÀ» ÀǹÌÇÕ´Ï´Ù. element?´Â ÇØ´ç ¿ä¼Ò°¡ 0°³ ¶Ç´Â Çϳª ¹ß»ýÇÔÀ» ÀǹÌÇÕ´Ï´Ù. ±×¸®°í element+(¾Æ·¡ ÂüÁ¶)´Â ÇØ´ç ¿ä¼Ò°¡ ÇÑ °³ ÀÌ»ó ¹ß»ýÇÔÀ» ÀǹÌÇÕ´Ï´Ù. µû¶ó¼­, À§ÀÇ <plugin> Á¤ÀÇ¿¡ µû¸£´Â °æ¿ì ¿¹¸¦ µé¾î, È®ÀåÁ¡ ¼±¾ð ¶Ç´Â È®Àå ±¸¼ºÀº Æ÷ÇÔµÇÁö ¾ÊÀº Ç÷¯±×ÀÎ(¿¹: ´Ù¸¥ Ç÷¯±×ÀÎÀÌ ÀÇÁ¸ÇÏ´Â °øÅë ¶óÀ̺귯¸®)Àº ¿Ã¹Ù¸¨´Ï´Ù. ¸¶Âù°¡Áö·Î, È®Àå ±¸¼º¸¸ Æ÷ÇԵǰí ÀÚüÀÇ È®ÀåÁ¡Àº Æ÷ÇÔµÇÁö ¾ÊÀº Ç÷¯±×ÀÎ(¿¹: ´Ù¸¥ Ç÷¯±×Àο¡ Á¦°øµÈ Ŭ·¡½º¸¦ ´Ù¸¥ Ç÷¯±×Àο¡ ¼±¾ðµÈ È®ÀåÁ¡À¸·Î ±¸¼º)µµ ¿Ã¹Ù¸¨´Ï´Ù.

Eclipse ¾ÆÅ°ÅØÃ³´Â ±¸¼º °¡´ÉÇÑ È®ÀåÁ¡ÀÇ °³³äÀ» ±â¹ÝÀ¸·Î ÇÕ´Ï´Ù. Ç÷§Æû ÀÚü¿¡¼­´Â Ç÷§Æû ¹× µ¥½ºÅ©Å¾¿¡ ´ëÇÑ È®Àå Ÿ½ºÅ©(¿¹: ¸Þ´º Á¶Ä¡ Ãß°¡, ÀÓº£µåµÈ ÆíÁý±â Á¦°ø)¸¦ ´Ù·ç´Â ÀÏ·ÃÀÇ È®ÀåÁ¡À» »çÀüÁ¤ÀÇÇÕ´Ï´Ù. »çÀüÁ¤ÀÇµÈ È®ÀåÁ¡ ¿Ü¿¡, Á¦°øµÈ °¢ Ç÷¯±×Àο¡¼­ Ãß°¡ È®ÀåÁ¡À» ¼±¾ðÇÒ ¼öµµ ÀÖ½À´Ï´Ù. º»ÁúÀûÀ¸·Î Ç÷¯±×ÀÎÀº È®ÀåÁ¡À» ¼±¾ðÇÔÀ¸·Î½á ¿ÜºÎ¿¡¼­ Á¦°øµÇ´Â È®Àå°ú ÇÔ²² Ç÷¯±×ÀÎ ±â´ÉÀ» ±¸¼ºÇÏ´Â ±â´ÉÀ» °ø°³ÇÕ´Ï´Ù. ¿¹¸¦ µé¾î, ÆäÀÌÁö ºô´õ Ç÷¯±×Àο¡¼­´Â ºô´õ ÆÈ·¹Æ®¿¡ »õ DTS(Design Time Control)¸¦ Ãß°¡Çϱâ À§ÇÑ È®ÀåÁ¡À» ¼±¾ðÇÒ ¼ö ÀÖ½À´Ï´Ù. µû¶ó¼­ ÆäÀÌÁö ºô´õ¿¡¼­´Â DTCÀÇ Àǹ̿¡ ´ëÇÑ ¾ÆÅ°ÅØÃ³¸¦ Á¤ÀÇÇϰí È®ÀåÁ¡À¸·Î ±¸¼ºµÈ DTC È®ÀåÀ» ã´Â Äڵ带 ±¸ÇöÇß½À´Ï´Ù.

<!ELEMENT extension-point EMPTY>
<!ATTLIST extension-point
 name                CDATA #REQUIRED
 id                  CDATA #REQUIRED
 schema              CDATA #IMPLIED
>

<extension-point> ¿ä¼Ò¿¡´Â ´ÙÀ½ ¼Ó¼ºÀÌ ÀÖ½À´Ï´Ù.

½ÇÁ¦ È®ÀåÀº <extension> ¼½¼Ç¿¡¼­ È®ÀåÁ¡(ÀÌ Ç÷¯±×Àο¡¼­ »çÀüÁ¤Àǵǰųª »õ·Î ¼±¾ðµÈ È®ÀåÁ¡)À¸·Î ±¸¼ºµË´Ï´Ù. ±¸¼º Á¤º¸´Â <extension> ÅÂ±×¿Í </extension> ÅÂ±× »çÀÌ¿¡¼­ Á¦´ë·Î ±¸¼ºµÈ XML·Î ÁöÁ¤µË´Ï´Ù. Ç÷§Æû¿¡¼­´Â Á¦´ë·Î ±¸¼ºµÈ XML¿¡ ÇʼöÀûÀÎ °Í ÀÌ¿ÜÀÇ ±¸¼º ¸¶Å©¾÷¿¡ ´ëÇÑ ½ÇÁ¦ ¾ç½ÄÀ» ÁöÁ¤ÇÏÁö ¾Ê½À´Ï´Ù. ÀÌ ¸¶Å©¾÷Àº È®ÀåÁ¡À» ¼±¾ðÇÑ Ç÷¯±×ÀÎÀÇ °ø±ÞÀÚ¿¡ ÀÇÇØ Á¤Àǵ˴ϴÙ. Ç÷§Æû¿¡¼­´Â ±¸¼º ¸¶Å©¾÷À» ½ÇÁ¦·Î ÇØ¼®ÇÏÁö ¾ÊÀ¸¸ç, È®ÀåÁ¡ ³í¸®°¡ ±¸¼ºµÈ ¸ðµç È®ÀåÀ» Á¶È¸ÇÒ ¶§ È®ÀåÁ¡ ó¸®ÀÇ ÀϺηΠ±¸¼º Á¤º¸¸¦ Ç÷¯±×Àο¡ Àü´ÞÇÕ´Ï´Ù.

<!ELEMENT extension ANY>
<!ATTLIST extension
 point               CDATA #REQUIRED
 id                  CDATA #IMPLIED
 name                CDATA #IMPLIED
>

<extension> ¿ä¼Ò¿¡´Â ´ÙÀ½ ¼Ó¼ºÀÌ ÀÖ½À´Ï´Ù.

Áß¿ä: <extension> ¿ä¼ÒÀÇ ÄÁÅÙÃ÷´Â ANY ±ÔÄ¢À» »ç¿ëÇÏ¿© ¼±¾ðµË´Ï´Ù. µû¶ó¼­ Á¦´ë·Î ±¸¼ºµÈ XMLÀº È®Àå ±¸¼º ¼½¼Ç(<extension>°ú </extension> ÅÂ±× »çÀÌ) ³»¿¡¼­ ÁöÁ¤µÉ ¼ö ÀÖ½À´Ï´Ù.

´ÜÆí

´ÜÆíÀº Ç÷¯±×ÀÎÀÇ ¹üÀ§¸¦ Áõ°¡½ÃŰ´Â µ¥ »ç¿ëµË´Ï´Ù. ¿¹Á¦´Â ´Ù¸¥ ¾ð¾î¿¡¼­ÀÇ ·¹ÀÌºí ¶Ç´Â ¸Þ½ÃÁö¿Í °°Àº µ¥ÀÌÅ͸¦ ÅëÇÕÇÕ´Ï´Ù.

<?xml encoding="US-ASCII"?>
<?eclipse version="3.2"?>
<!ELEMENT fragment (extension-point*, extension*)>

´ÜÆíÀÇ <extension-point> ¹× <extension> ÄÄÆ÷³ÍÆ®´Â È£½ºÆÃ Ç÷¯±×Àο¡ ³í¸®ÀûÀ¸·Î Ãß°¡µË´Ï´Ù.

ExtensionId ¹× ExtensionPointId¿¡ ´ëÇÑ ³ëÆ®

¹öÀü 3.2 ÀÌÀü¿¡ ¸¶Ä§Ç¥('.')¸¦ Æ÷ÇÔÇÏ´Â µ¥ »ç¿ëµÈ ExtensionId ¹× ExtensionPointIdÀÇ ÀÌÀü ¹öÀü°úÀÇ È£È¯¼ºÀ» Áö¿øÇϱâ À§ÇÑ Æ¯¼ö 󸮰¡ Ãß°¡µÇ¾ú½À´Ï´Ù. <?eclipse version?> ű׿¡ ÁöÁ¤µÈ ¹öÀü¿¡ µû¶ó ´ÙÀ½°ú °°ÀÌ Ã³¸®µË´Ï´Ù.

ÀÌ ±ÔÄ¢Àº ¸¶Ä§Ç¥('.') ¹®ÀÚ¸¦ Æ÷ÇÔÇÏ´Â ExtensionId ¹× ExtensionPointId¿¡¸¸ Àû¿ëµË´Ï´Ù.


Ç÷¯±×ÀÎ ManifestÀÇ ÀÌÀü ¹öÀü À§Ä¡: