Interface ILaunchable
-
public interface ILaunchable
Interface used to tag objects as launchable. Objects that provide an adapter of this type will be considered by the contextual launch support.The debug platform uses the
ILaunchable
interface as a tag for objects that can be launched via the context menu 'Run As / Debug As' actions and run/debug tool bar buttons. The platform checks if anILaunchable
adapter is available from the selection/active editor to determine if it should be considered for launching. However, the platform never actually retrieves the adapter or calls any methods on it (the interface is, in fact, empty).The debug platform performs the following test:
-
Platform.getAdapterManager().hasAdapter(X, ILaunchable.class.getName());
Thus objects that can be launched need to register
ILaunchable
adapters, but don't have to provide implementations. There is also no harm in implementing the interface or providing the adapter. For example, JDT contributes an adapter as follows. Although no adapter is actually provided the platform will answertrue
tohasAdapter(...)
.<extension point="org.eclipse.core.runtime.adapters"> <factory class="" adaptableType="org.eclipse.jdt.core.IJavaElement"> <adapter type="org.eclipse.debug.ui.actions.ILaunchable"/> </factory> </extension>
Clients may contribute an adapter of this type for launchable objects via the
org.eclipse.core.runtime.adapters
extension point. A factory and implementation of this interface are not actually required.Clients that need to check for presence of launchable adapter using standard expression mechanism, should use a property tester as follows:
<with variable="selection"> <iterator operator="and" ifEmpty="false"> <test property="org.eclipse.debug.core.launchable" value="debug"/> </iterator> </with>
- Since:
- 3.0
- See Also:
ContextualLaunchAction
-