<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<plugin
   id="org.eclipse.jdt.launching"
   name="%pluginName"
   version="3.0.0"
   provider-name="%providerName"
   class="org.eclipse.jdt.internal.launching.LaunchingPlugin">

   <runtime>
      <library name="launching.jar">
         <export name="*"/>
         <packages prefixes="org.eclipse.jdt.launching,org.eclipse.jdt.internal.launching"/>
      </library>
   </runtime>
   <requires>
      <import plugin="org.eclipse.core.resources"/>
      <import plugin="org.eclipse.jdt.core"/>
      <import plugin="org.eclipse.debug.core"/>
      <import plugin="org.eclipse.jdt.debug"/>
      <import plugin="org.eclipse.core.variables"/>
      <import plugin="org.eclipse.core.runtime.compatibility"/>
   </requires>


<!-- Extension point definitions -->
   <extension-point id="classpathProviders" name="%classpathProviders" schema="schema/classpathProviders.exsd"/>
   <extension-point id="runtimeClasspathEntryResolvers" name="%runtimeClasspathEntryResolvers" schema="schema/runtimeClasspathEntryResolvers.exsd"/>
   <extension-point id="runtimeClasspathEntries" name="%runtimeClasspathEntries" schema="schema/runtimeClasspathEntries.exsd"/>
   <extension-point id="vmConnectors" name="%vmConnectors" schema="schema/vmConnectors.exsd"/>
   <extension-point id="vmInstallTypes" name="%vmInstallTypes" schema="schema/vmInstallTypes.exsd"/>

<!-- Extensions -->
   <extension
         point="org.eclipse.jdt.launching.vmInstallTypes">
      <vmInstallType
            class="org.eclipse.jdt.internal.launching.StandardVMType"
            id="org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType">
      </vmInstallType>
      <vmInstallType
            class="org.eclipse.jdt.internal.launching.Standard11xVMType"
            id="org.eclipse.jdt.launching.Standard11xVMType">
      </vmInstallType>
   </extension>
   <extension
         point="org.eclipse.debug.core.launchConfigurationTypes">
      <launchConfigurationType
            name="%localJavaApplication"
            delegate="org.eclipse.jdt.internal.launching.JavaLocalApplicationLaunchConfigurationDelegate"
            modes="run, debug"
            id="org.eclipse.jdt.launching.localJavaApplication">
<!--  Platform source lookup disabled (in progress)
            sourceLocatorId="org.eclipse.jdt.launching.sourceLocator.JavaSourceLookupDirector"
            sourcePathComputerId="org.eclipse.jdt.launching.sourceLookup.javaApplicationSourcePathComputer">
-->
      </launchConfigurationType>
      <launchConfigurationType
            name="%remoteJavaApplication"
            delegate="org.eclipse.jdt.internal.launching.JavaRemoteApplicationLaunchConfigurationDelegate"
            modes="debug"
            id="org.eclipse.jdt.launching.remoteJavaApplication">
      </launchConfigurationType>
      <launchConfigurationType
            name="%appletLabel"
            delegate="org.eclipse.jdt.internal.launching.JavaAppletLaunchConfigurationDelegate"
            modes="run, debug"
            id="org.eclipse.jdt.launching.javaApplet">
      </launchConfigurationType>
   </extension>
   <extension
         point="org.eclipse.debug.core.sourceLocators">
      <sourceLocator
            name="%javaSourceLocatorName"
            class="org.eclipse.jdt.launching.sourcelookup.JavaSourceLocator"
            id="org.eclipse.jdt.launching.javaSourceLocator">
      </sourceLocator>
   </extension>
   <extension
         point="org.eclipse.jdt.launching.vmConnectors">
      <vmConnector
            class="org.eclipse.jdt.internal.launching.SocketAttachConnector"
            id="org.eclipse.jdt.launching.socketAttachConnector">
      </vmConnector>
   </extension>
   <extension
         point="org.eclipse.jdt.core.classpathVariableInitializer">
      <classpathVariableInitializer
            variable="JRE_LIB"
            class="org.eclipse.jdt.internal.launching.JavaClasspathVariablesInitializer">
      </classpathVariableInitializer>
      <classpathVariableInitializer
            variable="JRE_SRC"
            class="org.eclipse.jdt.internal.launching.JavaClasspathVariablesInitializer">
      </classpathVariableInitializer>
      <classpathVariableInitializer
            variable="JRE_SRCROOT"
            class="org.eclipse.jdt.internal.launching.JavaClasspathVariablesInitializer">
      </classpathVariableInitializer>
   </extension>
   <extension
         point="org.eclipse.jdt.core.classpathContainerInitializer">
      <classpathContainerInitializer
            class="org.eclipse.jdt.internal.launching.JREContainerInitializer"
            id="org.eclipse.jdt.launching.JRE_CONTAINER">
      </classpathContainerInitializer>
   </extension>
   <extension
         point="org.eclipse.jdt.launching.runtimeClasspathEntryResolvers">
      <runtimeClasspathEntryResolver
            container="org.eclipse.jdt.launching.JRE_CONTAINER"
            variable="JRE_LIB"
            class="org.eclipse.jdt.internal.launching.JRERuntimeClasspathEntryResolver"
            id="org.eclipse.jdt.launching.JRE_RESOLVER">
      </runtimeClasspathEntryResolver>
   </extension>
   <extension
         point="org.eclipse.jdt.launching.runtimeClasspathEntries">
      <runtimeClasspathEntry
            id="org.eclipse.jdt.launching.classpathentry.defaultClasspath"
            class="org.eclipse.jdt.internal.launching.DefaultProjectClasspathEntry">
      </runtimeClasspathEntry>
   </extension>   
   <extension
         point="org.eclipse.debug.core.launchConfigurationComparators">
      <launchConfigurationComparator
            attribute="org.eclipse.jdt.launching.CLASSPATH"
            class="org.eclipse.jdt.internal.launching.RuntimeClasspathEntryListComparator"
            id="org.eclipse.jdt.launching.classpathComparator">
      </launchConfigurationComparator>
      <launchConfigurationComparator
            attribute="org.eclipse.jdt.launching.SOURCE_PATH"
            class="org.eclipse.jdt.internal.launching.RuntimeClasspathEntryListComparator"
            id="org.eclipse.jdt.launching.sourcepathComparator">
      </launchConfigurationComparator>
   </extension>
   
   <!-- Source Lookup -->
   <extension point="org.eclipse.debug.core.sourceContainerTypes">
   		<sourceContainerType
   			id="org.eclipse.jdt.launching.sourceContainer.javaProject"
   			name="Java Project"
   			class="org.eclipse.jdt.internal.launching.JavaProjectSourceContainerTypeDelegate">
   		</sourceContainerType> 
   		<sourceContainerType
   			id="org.eclipse.jdt.launching.sourceContainer.packageFragmentRoot"
   			name="Package Fragment Root"
   			class="org.eclipse.jdt.internal.launching.PackageFragmentRootSourceContainerTypeDelegate">
   		</sourceContainerType>    		
   		<sourceContainerType
   			id="org.eclipse.jdt.launching.sourceContainer.classpathVariable"
   			name="Java Classpath Variable"
   			class="org.eclipse.jdt.internal.launching.ClasspathVariableSourceContainerTypeDelegate">
   		</sourceContainerType>   		
   		<sourceContainerType
   			id="org.eclipse.jdt.launching.sourceContainer.classpathContainer"
   			name="Java Library"
   			class="org.eclipse.jdt.internal.launching.ClasspathContainerSourceContainerTypeDelegate">
   		</sourceContainerType>    		
   </extension>
   <extension point="org.eclipse.debug.core.sourcePathComputers">
   		<sourcePathComputer
   			id="org.eclipse.jdt.launching.sourceLookup.javaApplicationSourcePathComputer"
   			class="org.eclipse.jdt.internal.launching.JavaApplicationSourcePathComputer">
   		</sourcePathComputer>
   </extension>
   <extension point="org.eclipse.debug.core.sourceLocators">
   		<sourceLocator
   			id="org.eclipse.jdt.launching.sourceLocator.JavaSourceLookupDirector"
   			class="org.eclipse.jdt.internal.launching.JavaSourceLookupDirector"
   			name="Java Source Locator">
   		</sourceLocator>
   </extension>
   		

</plugin>
