Ç÷§Æû¿¡ ½ÇÇà±â Ãß°¡

Ç÷¯±×ÀÎÀº ½ÇÇà ±¸¼º À¯ÇüÀ» org.eclipse.debug.core.launchConfigurationTypes È®ÀåÁ¡À» »ç¿ëÇÏ´Â Ç÷§Æû¿¡ Ãß°¡ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ È®ÀåÁ¡À» »ç¿ëÇÏ¸é °íÀ¯ ID¸¦ »ç¿ëÇÏ¿© ±¸¼º À¯ÇüÀ» ¼±¾ðÇÒ ¼ö ÀÖ½À´Ï´Ù. À̶§ ÀÌ¿¡ ´ëÀÀÇÏ´Â ILaunchConfigurationDelegate ±¸ÇöÀ» Á¦°øÇØ¾ß ÇÕ´Ï´Ù. ÁöÁ¤µÈ ¸ðµå¿¡¼­ ½ÇÇà ±¸¼ºÀ» ½ÇÇàÇÏ´Â À§ÀÓÀÌ ÇÊ¿äÇÕ´Ï´Ù. ¼±ÅÃÀûÀ¸·Î ½ÇÇàÀ» Áß´ÜÇÏ°í ½ÇÇà Àü ÀÛ¾÷°ø°£¿¡¼­ °ü·Ã ÇÁ·ÎÁ§Æ®¸¦ ºôµåÇÏ¸ç ½ÇÇà ½Ã »ç¿ëÇÒ ½ÇÇà ¿ÀºêÁ§Æ® ÀÛ¼ºÀ» Á¦¾îÇÒ ¼ö ÀÖµµ·Ï À§ÀÓ ÀÎÅÍÆäÀ̽º¸¦ °­È­ÇÏ´Â ILaunchConfigurationDelegate2¸¦ ±¸ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù.

À§ÀÓÀ» Á¤ÀÇÇÒ »Ó¸¸ ¾Æ´Ï¶ó À§ÀÓ¿¡¼­ Áö¿øÇÏ´Â ½ÇÇà ¸ðµå ¹× ÀÌ À¯ÇüÀÇ ½ÇÇà±â¸¦ »ç¿ëÀÚ¿¡°Ô Ç¥½ÃÇÒ ¶§ »ç¿ëÇØ¾ß ÇÏ´Â À̸§À» ÁöÁ¤ÇÒ ¼ö ÀÖ½À´Ï´Ù.

´ÙÀ½ ¸¶Å©¾÷¿¡¼­´Â Java µµ±¸¿¡¼­ ·ÎÄà Java ÇÁ·Î±×·¥À» ½ÇÇàÇϱâ À§ÇØ Java ½ÇÇà ±¸¼ºÀ» ¼±¾ðÇÏ´Â ¹æ¹ýÀ» º¸¿©ÁÝ´Ï´Ù.

<extension point = "org.eclipse.debug.core.launchConfigurationTypes">
   <launchConfigurationType
   	   id="org.eclipse.jdt.launching.localJavaApplication"
	   name="%localJavaApplication"
	   delegate="org.eclipse.jdt.internal.launching.JavaLocalApplicationLaunchConfigurationDelegate"
	   modes= "run, debug"
	   sourceLocatorId="org.eclipse.jdt.launching.sourceLocator.JavaSourceLookupDirector"
       sourcePathComputerId="org.eclipse.jdt.launching.sourceLookup.javaSourcePathComputer">
   </launchConfigurationType>
   </extension>

ÀÌ È®Àå¿¡¼­´Â ·ÎÄà Java ½ÇÇà ±¸¼ºÀ» »ç¿ëÇÏ¿© ½ÇÇàµÇ´Â ÇÁ·Î±×·¥À» ½ÇÇàÇϰųª µð¹ö±×ÇÒ ¶§ »ç¿ë °¡´ÉÇÑ ½ÇÇà ±¸¼º À§ÀÓÀ» Á¤ÀÇÇÕ´Ï´Ù.

»õ ½ÇÇà ¸ðµå Á¤ÀÇ

ÀÌÀü¿¡ Ç÷§Æû¿¡¼­ ÇÁ·Î±×·¥À» ½ÇÇà, µð¹ö±ë ¶Ç´Â ÇÁ·ÎÆÄÀϸµÇÒ ¶§ »ç¿ëÇÒ ½ÇÇà ¸ðµå¸¦ Á¤ÀÇÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ¾ð±ÞÇß½À´Ï´Ù. ÀÌ ¸ðµå´Â org.eclipse.debug.core.launchModes È®ÀåÁ¡À» »ç¿ëÇÏ¿© Á¤Àǵ˴ϴÙ. ÀÌ È®ÀåÁ¡À» »ç¿ëÇÏ¸é ¸ðµå¸¦ ¼³¸íÇÒ ¶§ »ç¿ëÀÚ¿¡°Ô Ç¥½ÃµÇ¾î¾ß ÇÏ´Â ¹®ÀÚ¿­ ¸ðµå À̸§ ¹× ·¹À̺íÀ» Á¤ÀÇÇÏ¿© ½ÇÇà ¸ðµå¸¦ ¼±¾ðÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¸¶Å©¾÷¿¡¼­´Â Ç÷§ÆûÀÇ ¼¼ °¡Áö Ç¥ÁØ ½ÇÇà ¸ðµå Á¤ÀǸ¦ Ç¥½ÃÇÕ´Ï´Ù.

<extension point="org.eclipse.debug.core.launchModes">
	<launchMode
		label="%run"
		mode="run">
	</launchMode>
	<launchMode
		label="%debug"
		mode="debug">
	</launchMode>
	<launchMode
		label="%profile"
		mode="profile">
	</launchMode>
   </extension>   

¸ðµå°¡ ƯÁ¤ ½ÇÇà ±¸¼º À¯Çü°ú ¿¬°üµÇÁö ¾Ê¾Ò´Ù´Â Á¡¿¡ ÁÖÀÇÇϽʽÿÀ. ÀÌÀü¿¡ Ç¥½ÃµÈ ´ë·Î ÇØ´ç ¿¬°üÀº ±¸¼º À¯Çü¿¡¼­ ½ÇÇà À§ÀÓÀ» ÁöÁ¤ÇÑ °æ¿ì¿¡ ³ªÅ¸³³´Ï´Ù.

½ÇÇà À§ÀÓ Á¤ÀÇ

½ÇÇà ¸ðµå´Â ½ÇÇà ±¸¼º À¯Çü°ú ¹«°üÇÏ°Ô ÁöÁ¤µÉ ¼ö ÀÖÀ¸¹Ç·Î ½ÇÇà ±¸¼ºÀÇ ¿ø·¡ À§ÀÓ¿¡¼­ ±¸ÇöÇÏÁö ¾Ê´Â »õ ¸ðµå¸¦ Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ °æ¿ì Ç÷¯±×Àο¡¼­ ƯÁ¤ ½ÇÇà ±¸¼º À¯ÇüÀÇ Æ¯Á¤ ¸ðµå¸¦ ±¸ÇöÇÏ´Â ½ÇÇà À§ÀÓÀ» Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. org.eclipse.debug.core.launchDelegates È®ÀåÁ¡À» »ç¿ëÇÏ¿© Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀÌ È®ÀåÁ¡À» »ç¿ëÇϸé ÁöÁ¤µÈ ±¸¼º À¯ÇüÀÇ ÁöÁ¤µÈ ¸ðµå¸¦ ±¸ÇöÇÏ´Â ½ÇÇà À§ÀÓÀ» Á¤ÀÇÇÒ ¼ö ÀÖ½À´Ï´Ù. ´ÙÀ½ ¸¶Å©¾÷¿¡¼­´Â ·ÎÄà Java ÀÀ¿ëÇÁ·Î±×·¥À» ÇÁ·ÎÆÄÀϸµÇÒ ¶§ »ç¿ëÇÒ À§ÀÓÀ» Á¤ÀÇÇÏ´Â ¹æ¹ýÀ» Ç¥½ÃÇÕ´Ï´Ù.

<extension point="org.eclipse.debug.core.launchDelegates">
<launchDelegate
   id="com.example.MyJavaProfileDelegate"
   delegate="com.example.MyJavaProfileDelegate"
   type="org.eclipse.jdt.launching.localJavaApplication"
   modes="profile">
  </launchDelegate>
   </extension>   

À§ÀÓ ½ºÆåÀº ½ÇÇà ±¸¼º À¯ÇüÀ» Á¤ÀÇÇÒ ¶§ ½ÇÇà ±¸¼º À¯ÇüÀÌ Áö¿øµÇ´Â ¸ðµå¿Í ÇÔ²² ÁöÁ¤µÈ´Ù´Â Á¡À» Á¦¿ÜÇϰí,ÀÌ °æ¿ì ¼öÇàÇÏ´Â ¹æ¹ý°ú À¯»çÇÏ°Ô ¼öÇàµË´Ï´Ù. ÀÌÀü¿¡ Ç¥½ÃµÈ ´ë·Î À§ÀÓ¿¡¼­´Â ILaunchConfigurationDelegate¸¦ ±¸ÇöÇØ¾ß ÇÏ¸é ¼±ÅÃÀûÀ¸·Î ½ÇÇà ¼ø¼­¸¦ Á¦¾îÇϵµ·Ï ILaunchConfigurationDelegate2¸¦ ±¸ÇöÇÒ ¼ö ÀÖ½À´Ï´Ù.

±âŸ ÂüÁ¶

We Have Lift-off: The Launching Framework in Eclipse¿¡¼­´Â °íÀ¯ÇÑ ½ÇÇà À¯ÇüÀ» Á¤ÀÇÇÏ´Â ¿¹Á¦¸¦ ÀÚ¼¼È÷ Á¦°øÇÕ´Ï´Ù.