【原创】Eclipse Launcher (Run/Debug As 菜单扩展)实现
1. Eclipse Debug 流程图
2. 具体实现
2.1 扩展 configurationType
实现代码:
<extension
point= "org.eclipse.debug.core.launchConfigurationTypes" >
<launchConfigurationType
delegate= "org.salever.rcp.examples.debug.launch.XMlLaunchConfigurationDelegate"
id= "org.salever.rcp.debug.demo.xmlLaunchConfigurationType"
modes= "run, debug"
name= "Launch XML debug" >
</launchConfigurationType>
</extension>
2.2 扩展 ILaunchShortcut
实现代码:
<extension
point= "org.eclipse.debug.ui.launchShortcuts" >
<shortcut
class= "org.salever.rcp.examples.debug.launch.XmlLaunchShortcut"
icon= "icons/sample.gif"
id= "org.salever.rcp.debug.demo.xmlShortcut"
label= "Launch XML debug"
modes= "run, debug" >
<configurationType
id= "org.salever.rcp.debug.demo.xmlLaunchConfigurationType" ></configurationType>
<contextualLaunch>
<enablement>
<with
variable= "selection" >
<count
value= "1" >
</count>
<iterate>
<or>
<test
property= "org.eclipse.debug.ui.matchesPattern"
value= "*.xml" >
</test>
</or>
</iterate>
</with>
</enablement>
</contextualLaunch>
</shortcut>
</extension>
2.3 创建 Run Configuration 界面
实现代码:
<extension
point= "org.eclipse.debug.ui.launchConfigurationTabGroups" >
<launchConfigurationTabGroup
class= "org.salever.rcp.examples.debug.launch.XmlLaunchConfigurationTabGroup"
id= "org.salever.rcp.debug.demo.xmllaunchConfigurationTabGroup"
type= "org.salever.rcp.debug.demo.xmlLaunchConfigurationType" >
</launchConfigurationTabGroup>
</extension>
2.4 指定 debug 显示图片
<extension
point= "org.eclipse.debug.ui.launchConfigurationTypeImages" >
<launchConfigurationTypeImage
configTypeID= "org.salever.rcp.debug.demo.xmlLaunchConfigurationType"
icon= "icons/alt_window_16.gif"
id= "org.salever.rcp.debug.demo.launchConfigurationTypeImage1" >
</launchConfigurationTypeImage>
</extension>
2.5 其他
附件为一个示例plugin工程,*.xml文件右键会出现Run As Launch XML Debug 菜单,并打开这个文件,以模拟debg