[KARAF-2780] Fix issue during LaunchConfiguration creation
diff --git a/plugins/org.apache.karaf.eik.ui/src/main/java/org/apache/karaf/eik/ui/KarafLaunchConfigurationInitializer.java b/plugins/org.apache.karaf.eik.ui/src/main/java/org/apache/karaf/eik/ui/KarafLaunchConfigurationInitializer.java
index 558954c..f3c9b38 100644
--- a/plugins/org.apache.karaf.eik.ui/src/main/java/org/apache/karaf/eik/ui/KarafLaunchConfigurationInitializer.java
+++ b/plugins/org.apache.karaf.eik.ui/src/main/java/org/apache/karaf/eik/ui/KarafLaunchConfigurationInitializer.java
@@ -67,8 +67,7 @@
     /**
      * Convenience method for initializing a Karaf launch configuration
      *
-     * @param configuration
-     *            the working copy of the launch configuration
+     * @param configuration the working copy of the launch configuration
      */
     public static void initializeConfiguration(final ILaunchConfigurationWorkingCopy configuration) {
         final KarafLaunchConfigurationInitializer configurationInitializer = new KarafLaunchConfigurationInitializer();
@@ -126,7 +125,7 @@
      * Karaf platform and defers the the parent for all other bundles.
      *
      * @see org.eclipse.pde.ui.launcher.OSGiLaunchConfigurationInitializer#getAutoStart
-     *      (java.lang.String)
+     * (java.lang.String)
      */
     @Override
     protected String getAutoStart(final String bundleID) {
@@ -145,7 +144,7 @@
      * provided by the parent.
      *
      * @see org.eclipse.pde.ui.launcher.OSGiLaunchConfigurationInitializer#getStartLevel
-     *      (java.lang.String)
+     * (java.lang.String)
      */
     @Override
     protected String getStartLevel(final String bundleID) {
@@ -195,8 +194,7 @@
      * launcher. This includes registering the default boot classpath entries
      * and setting the Karaf platform default OSGi bundle start level.
      *
-     * @param configuration
-     *            the launch configuration
+     * @param configuration the launch configuration
      * @see org.eclipse.pde.ui.launcher.OSGiLaunchConfigurationInitializer#initializeFrameworkDefaults(org.eclipse.debug.core.ILaunchConfigurationWorkingCopy)
      */
     @Override
@@ -252,24 +250,29 @@
             String memento = workspaceTargetHandle.getMemento();
 
             IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
-            IResource targetDefinitionFile = root.findMember(memento);
-            if (targetDefinitionFile != null) {
-                return targetDefinitionFile.getProject();
-            }
+            return root.getProject(getProjectNameFromMemento(memento));
+        } else {
+            return null;
         }
+    }
 
-        return null;
+    private String getProjectNameFromMemento(String memento) {
+        String[] split = memento.split("/");
+        if (split.length != 3) {
+            throw new IllegalArgumentException();
+        } else {
+            return split[1];
+        }
     }
 
     /**
      * Returns the a plugin id favoring the newest version in the target
      * platform
      *
-     * @param model
-     *            the {@link IPluginModelBase}
+     * @param model the {@link IPluginModelBase}
      * @return the string plugin identifier with an optional version set at the
-     *         newest version if there is more than one plugin that responds to
-     *         the given id
+     * newest version if there is more than one plugin that responds to
+     * the given id
      */
     private String getBundleId(final IPluginModelBase model) {
         final IPluginBase base = model.getPluginBase();
@@ -288,8 +291,7 @@
     /**
      * Adds default VM arguments to this launch configuration
      *
-     * @param configuration
-     *            the working copy of the launch configuration
+     * @param configuration the working copy of the launch configuration
      */
     private void addDefaultVMArguments(final ILaunchConfigurationWorkingCopy configuration) {
         final StringBuffer vmArgs = new StringBuffer();
@@ -301,7 +303,7 @@
         // prevent terminal CTRL-characters in Eclipse console on Windows
         final String localOperatingSystem = System.getProperty("os.name"); //$NON-NLS-1$
         if (localOperatingSystem.toLowerCase().indexOf("windows") >= 0 //$NON-NLS-1$
-            && vmArgs.indexOf("-Djline.terminal") == -1) { //$NON-NLS-1$
+                && vmArgs.indexOf("-Djline.terminal") == -1) { //$NON-NLS-1$
             vmArgs.append(" -Djline.terminal=jline.UnsupportedTerminal"); //$NON-NLS-1$
         }