<?xml version="1.0" encoding="UTF-8"?>

<plugin
   id="org.eclipse.jdt.debug.tests"
   name="%pluginName"
   version="2.1.0"
   provider-name="%providerName"
   class="org.eclipse.jdt.debug.testplugin.JavaTestPlugin">
   
   <requires>
	  <import plugin="org.junit"/>   
      <import plugin="org.eclipse.core.resources"/>
      <import plugin="org.apache.xerces"/>
      <import plugin="org.eclipse.ui"/>
      <import plugin="org.eclipse.jdt.core"/>
      <import plugin="org.eclipse.jdt.ui"/>
	  <import plugin="org.eclipse.jdt.launching"/>
	  <import plugin="org.eclipse.jdt.debug"/>
	  <import plugin="org.eclipse.jdt.debug.ui"/>
	  <import plugin="org.eclipse.debug.core"/>
	  <import plugin="org.eclipse.debug.ui"/>
	  <import plugin="org.eclipse.update.core"/>
   </requires>

<runtime>
  <library name="javadebugtests.jar" >
     <export name = "*"/>
  </library> 
</runtime>

<extension point="org.eclipse.jdt.launching.classpathProviders">
  <classpathProvider
    id = "org.eclipse.jdt.debug.tests.EmptyClasspathProvider"
    class ="org.eclipse.jdt.debug.testplugin.EmptyClasspathProvider">
  </classpathProvider>
</extension>

<extension point="org.eclipse.debug.ui.consoleLineTrackers">
  <consoleLineTracker
    id = "org.eclipse.jdt.debug.tests.ConsoleLineTracker"
    class ="org.eclipse.jdt.debug.testplugin.ConsoleLineTracker"
    processType = "java">
  </consoleLineTracker>
</extension>

<extension point = "org.eclipse.jdt.core.classpathVariableInitializer">
	<classpathVariableInitializer
		variable="NULL_VARIALBE"
		class="org.eclipse.jdt.debug.testplugin.NullVariableInitializer"/>
</extension>	

</plugin>
