diff --git a/plugins/org.eclipse.objectteams.otdt.debug/src/org/eclipse/objectteams/otdt/debug/OTDebugPlugin.java b/plugins/org.eclipse.objectteams.otdt.debug/src/org/eclipse/objectteams/otdt/debug/OTDebugPlugin.java
index 5a76d1d..b0edc06 100644
--- a/plugins/org.eclipse.objectteams.otdt.debug/src/org/eclipse/objectteams/otdt/debug/OTDebugPlugin.java
+++ b/plugins/org.eclipse.objectteams.otdt.debug/src/org/eclipse/objectteams/otdt/debug/OTDebugPlugin.java
@@ -51,10 +51,6 @@
 {
 	public static final String PLUGIN_ID = "org.eclipse.objectteams.otdt.debug"; //$NON-NLS-1$
 	public static final String OT_LAUNCH = "org.eclipse.objectteams.launch"; //$NON-NLS-1$
-	/**
-	 * @deprecated reference to a removed launch configuration type.
-	 */
-    public static final String OT_LAUNCH_CONFIGURATION_TYPE = "org.objectteams.otdt.debug.LaunchConfigurationType"; //$NON-NLS-1$
     
     private OTDebugElementsContainerFactory _containerFactory;
 
diff --git a/plugins/org.eclipse.objectteams.otdt.debug/src/org/eclipse/objectteams/otdt/debug/OTLaunchConfigMigrationDelegate.java b/plugins/org.eclipse.objectteams.otdt.debug/src/org/eclipse/objectteams/otdt/debug/OTLaunchConfigMigrationDelegate.java
index b289ec7..af3c830 100644
--- a/plugins/org.eclipse.objectteams.otdt.debug/src/org/eclipse/objectteams/otdt/debug/OTLaunchConfigMigrationDelegate.java
+++ b/plugins/org.eclipse.objectteams.otdt.debug/src/org/eclipse/objectteams/otdt/debug/OTLaunchConfigMigrationDelegate.java
@@ -43,8 +43,8 @@
 
 	final static HashMap<String,String> oldToNew = new HashMap<String, String>();
 	static {
-		oldToNew.put(OTDebugPlugin.OT_LAUNCH_CONFIGURATION_TYPE, 	IJavaLaunchConfigurationConstants.ID_JAVA_APPLICATION);
-		// 'referencing' constants from downstream plug-ins (old, removed launch configuration types)
+		// 'referencing' deleted constants from old plug-ins (old, removed launch configuration types)
+		oldToNew.put("org.objectteams.otdt.debug.LaunchConfigurationType", 	IJavaLaunchConfigurationConstants.ID_JAVA_APPLICATION); //$NON-NLS-1$
 		oldToNew.put("org.objectteams.otdt.pde.ui.OTEquinoxLaunchConfigurationType", 		  "org.eclipse.pde.ui.EquinoxLauncher");  //$NON-NLS-1$ //$NON-NLS-2$
 		oldToNew.put("org.objectteams.otdt.pde.ui.EclipseApplicationLaunchConfigurationType", "org.eclipse.pde.ui.RuntimeWorkbench"); //$NON-NLS-1$ //$NON-NLS-2$
 	}
diff --git a/testplugins/org.eclipse.objectteams.otdt.debug.tests/src/org/eclipse/objectteams/otdt/debug/tests/DebugTestsPlugin.java b/testplugins/org.eclipse.objectteams.otdt.debug.tests/src/org/eclipse/objectteams/otdt/debug/tests/DebugTestsPlugin.java
index 61195e6..4f5a277 100644
--- a/testplugins/org.eclipse.objectteams.otdt.debug.tests/src/org/eclipse/objectteams/otdt/debug/tests/DebugTestsPlugin.java
+++ b/testplugins/org.eclipse.objectteams.otdt.debug.tests/src/org/eclipse/objectteams/otdt/debug/tests/DebugTestsPlugin.java
@@ -68,7 +68,7 @@
 
     protected String getPluginID()
     {
-        return "org.eclispe.objectteams.otdt.debug.tests";
+        return "org.eclipse.objectteams.otdt.debug.tests";
     }
     
     /**
diff --git a/testplugins/org.eclipse.objectteams.otdt.debug.tests/src/org/eclipse/objectteams/otdt/debug/tests/OTProjectCreationDecorator.java b/testplugins/org.eclipse.objectteams.otdt.debug.tests/src/org/eclipse/objectteams/otdt/debug/tests/OTProjectCreationDecorator.java
index 88f53df..b700ece 100644
--- a/testplugins/org.eclipse.objectteams.otdt.debug.tests/src/org/eclipse/objectteams/otdt/debug/tests/OTProjectCreationDecorator.java
+++ b/testplugins/org.eclipse.objectteams.otdt.debug.tests/src/org/eclipse/objectteams/otdt/debug/tests/OTProjectCreationDecorator.java
@@ -150,10 +150,10 @@
         // this one used by StratumTests:
         createLaunchConfiguration("Breakpoints");
 //{ObjectTeams: own tests:        
-        createLaunchConfiguration("rofitests.RoFiTeam", OTDebugPlugin.OT_LAUNCH_CONFIGURATION_TYPE);
-        createLaunchConfiguration("copyinheritancetests.SubTeam", OTDebugPlugin.OT_LAUNCH_CONFIGURATION_TYPE);
-        createLaunchConfiguration("copyinheritancetests.SubTeam2", OTDebugPlugin.OT_LAUNCH_CONFIGURATION_TYPE);
-        createLaunchConfiguration("copyinheritancetests.SubTeam3", OTDebugPlugin.OT_LAUNCH_CONFIGURATION_TYPE);
+        createLaunchConfiguration("rofitests.RoFiTeam");
+        createLaunchConfiguration("copyinheritancetests.SubTeam");
+        createLaunchConfiguration("copyinheritancetests.SubTeam2");
+        createLaunchConfiguration("copyinheritancetests.SubTeam3");
 // SH}
     }
 
