BETA_JAVA9 mergers - updating bundle versions

Change-Id: I0e4389da1a993314967586cb7aab01f3f86eb541
diff --git a/org.eclipse.jdt.debug.tests/java8/EvalTest18.java b/org.eclipse.jdt.debug.tests/java8/EvalTest18.java
index e7f148e..3eeedd5 100644
--- a/org.eclipse.jdt.debug.tests/java8/EvalTest18.java
+++ b/org.eclipse.jdt.debug.tests/java8/EvalTest18.java
@@ -5,10 +5,6 @@
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
  *
- * This is an implementation of an early-draft specification developed under the Java
- * Community Process (JCP) and is made available for testing and evaluation purposes
- * only. The code is not compatible with any specification of the JCP.
- * 
  * Contributors:
  *     Jesper Steen Møller - initial API and implementation
  *******************************************************************************/
diff --git a/org.eclipse.jdt.debug.tests/test plugin/org/eclipse/jdt/debug/testplugin/JavaProjectHelper.java b/org.eclipse.jdt.debug.tests/test plugin/org/eclipse/jdt/debug/testplugin/JavaProjectHelper.java
index 6ca7e42..08eb3cf 100644
--- a/org.eclipse.jdt.debug.tests/test plugin/org/eclipse/jdt/debug/testplugin/JavaProjectHelper.java
+++ b/org.eclipse.jdt.debug.tests/test plugin/org/eclipse/jdt/debug/testplugin/JavaProjectHelper.java
@@ -5,10 +5,6 @@
  *  which accompanies this distribution, and is available at
  *  http://www.eclipse.org/legal/epl-v10.html
  *
- * This is an implementation of an early-draft specification developed under the Java
- * Community Process (JCP) and is made available for testing and evaluation purposes
- * only. The code is not compatible with any specification of the JCP.
- *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *     Jesper S. Møller - bug 422029: [1.8] Enable debug evaluation support for default methods
diff --git a/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/AbstractDebugTest.java b/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/AbstractDebugTest.java
index b106fc4..76e36a8 100644
--- a/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/AbstractDebugTest.java
+++ b/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/AbstractDebugTest.java
@@ -5,10 +5,6 @@
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
  *
- * This is an implementation of an early-draft specification developed under the Java
- * Community Process (JCP) and is made available for testing and evaluation purposes
- * only. The code is not compatible with any specification of the JCP.
- *
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *     Jesper Steen Møller - bug 422029: [1.8] Enable debug evaluation support for default methods
diff --git a/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/EvalTestSuite.java b/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/EvalTestSuite.java
index 7cd7ae8..1e4d378 100644
--- a/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/EvalTestSuite.java
+++ b/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/EvalTestSuite.java
@@ -5,10 +5,6 @@
  *  which accompanies this distribution, and is available at
  *  http://www.eclipse.org/legal/epl-v10.html
  *
- * This is an implementation of an early-draft specification developed under the Java
- * Community Process (JCP) and is made available for testing and evaluation purposes
- * only. The code is not compatible with any specification of the JCP.
- *
  *  Contributors:
  *     IBM Corporation - initial API and implementation
  *     Jesper S. Møller - bug 422029: [1.8] Enable debug evaluation support for default methods
diff --git a/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/eval/Java8Tests.java b/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/eval/Java8Tests.java
index 9603f96..c4a06d6 100644
--- a/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/eval/Java8Tests.java
+++ b/org.eclipse.jdt.debug.tests/tests/org/eclipse/jdt/debug/tests/eval/Java8Tests.java
@@ -5,10 +5,6 @@
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
  *
- * This is an implementation of an early-draft specification developed under the Java
- * Community Process (JCP) and is made available for testing and evaluation purposes
- * only. The code is not compatible with any specification of the JCP.
- *
  * Contributors:
  *     Jesper S. Møller - initial API and implementation
  *     Jesper Steen Møller - bug 426903: [1.8] Cannot evaluate super call to default method
diff --git a/org.eclipse.jdt.debug.ui/.settings/.api_filters b/org.eclipse.jdt.debug.ui/.settings/.api_filters
index 86bc280..58b8e3a 100644
--- a/org.eclipse.jdt.debug.ui/.settings/.api_filters
+++ b/org.eclipse.jdt.debug.ui/.settings/.api_filters
@@ -7,6 +7,12 @@
                 <message_argument value="3.8.0"/>
             </message_arguments>
         </filter>
+        <filter id="924844039">
+            <message_arguments>
+                <message_argument value="3.8.50"/>
+                <message_argument value="3.8.1"/>
+            </message_arguments>
+        </filter>
     </resource>
     <resource path="ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaClasspathTab.java" type="org.eclipse.jdt.debug.ui.launchConfigurations.JavaClasspathTab">
         <filter comment="Known illegal extension" id="576720909">
@@ -16,6 +22,15 @@
             </message_arguments>
         </filter>
     </resource>
+    <resource path="ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaDependenciesTab.java" type="org.eclipse.jdt.debug.ui.launchConfigurations.JavaDependenciesTab">
+        <filter id="1108344834">
+            <message_arguments>
+                <message_argument value="3.9"/>
+                <message_argument value="3.8"/>
+                <message_argument value="org.eclipse.jdt.debug.ui.launchConfigurations.JavaDependenciesTab"/>
+            </message_arguments>
+        </filter>
+    </resource>
     <resource path="ui/org/eclipse/jdt/internal/debug/ui/classpath/ClasspathEntry.java" type="org.eclipse.jdt.internal.debug.ui.classpath.ClasspathEntry">
         <filter comment="Known illegal implementation" id="574619656">
             <message_arguments>
diff --git a/org.eclipse.jdt.debug.ui/META-INF/MANIFEST.MF b/org.eclipse.jdt.debug.ui/META-INF/MANIFEST.MF
index 5197886..a498154 100644
--- a/org.eclipse.jdt.debug.ui/META-INF/MANIFEST.MF
+++ b/org.eclipse.jdt.debug.ui/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.jdt.debug.ui; singleton:=true
-Bundle-Version: 3.8.1.qualifier
+Bundle-Version: 3.8.50.qualifier
 Bundle-Activator: org.eclipse.jdt.internal.debug.ui.JDIDebugUIPlugin
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
diff --git a/org.eclipse.jdt.debug.ui/pom.xml b/org.eclipse.jdt.debug.ui/pom.xml
index 3f8544d..fb3f42e 100644
--- a/org.eclipse.jdt.debug.ui/pom.xml
+++ b/org.eclipse.jdt.debug.ui/pom.xml
@@ -18,7 +18,7 @@
   </parent>
   <groupId>org.eclipse.jdt</groupId>
   <artifactId>org.eclipse.jdt.debug.ui</artifactId>
-  <version>3.8.1-SNAPSHOT</version>
+  <version>3.8.50-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
   <properties>
     <code.ignoredWarnings>-warn:+resource,-deprecation,unavoidableGenericProblems</code.ignoredWarnings>
diff --git a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaDependenciesTab.java b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaDependenciesTab.java
index d351777..35629ff 100644
--- a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaDependenciesTab.java
+++ b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaDependenciesTab.java
@@ -74,7 +74,7 @@
  * This class may be instantiated.
  * </p>
  *
- * @since 3.8
+ * @since 3.9
  * @noextend This class is not intended to be sub-classed by clients.
  */
 public class JavaDependenciesTab extends JavaClasspathTab {
diff --git a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaJRETab.java b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaJRETab.java
index 7686be2..cbef81e 100644
--- a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaJRETab.java
+++ b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaJRETab.java
@@ -617,7 +617,7 @@
 	}
 
 	/**
-	 * @since 3.8
+	 * @since 3.9
 	 */
 	@Override
 	public void postApply() {
@@ -630,8 +630,9 @@
 			}
 		}
 	}
+	
 	/**
-	 * @since 3.8
+	 * @since 3.9
 	 */
 	@Override
 	public boolean OkToLeaveTab() {
diff --git a/org.eclipse.jdt.debug/META-INF/MANIFEST.MF b/org.eclipse.jdt.debug/META-INF/MANIFEST.MF
index 283cc24..21efd30 100644
--- a/org.eclipse.jdt.debug/META-INF/MANIFEST.MF
+++ b/org.eclipse.jdt.debug/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.jdt.debug; singleton:=true
-Bundle-Version: 3.11.0.qualifier
+Bundle-Version: 3.11.50.qualifier
 Bundle-ClassPath: jdi.jar,
  jdimodel.jar,
  tools.jar
diff --git a/org.eclipse.jdt.debug/pom.xml b/org.eclipse.jdt.debug/pom.xml
index e70787d..0f59d74 100644
--- a/org.eclipse.jdt.debug/pom.xml
+++ b/org.eclipse.jdt.debug/pom.xml
@@ -18,6 +18,6 @@
   </parent>
   <groupId>org.eclipse.jdt</groupId>
   <artifactId>org.eclipse.jdt.debug</artifactId>
-  <version>3.11.0-SNAPSHOT</version>
+  <version>3.11.50-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/org.eclipse.jdt.launching/.settings/.api_filters b/org.eclipse.jdt.launching/.settings/.api_filters
index cf3690d..3dafd54 100644
--- a/org.eclipse.jdt.launching/.settings/.api_filters
+++ b/org.eclipse.jdt.launching/.settings/.api_filters
@@ -7,6 +7,164 @@
                 <message_argument value="3.9.0"/>
             </message_arguments>
         </filter>
+        <filter id="924844039">
+            <message_arguments>
+                <message_argument value="3.9.50"/>
+                <message_argument value="3.9.0"/>
+            </message_arguments>
+        </filter>
+    </resource>
+    <resource path="launching/org/eclipse/jdt/launching/AbstractJavaLaunchConfigurationDelegate.java" type="org.eclipse.jdt.launching.AbstractJavaLaunchConfigurationDelegate">
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="getClasspathAndModulepath(ILaunchConfiguration)"/>
+            </message_arguments>
+        </filter>
+    </resource>
+    <resource path="launching/org/eclipse/jdt/launching/AbstractVMRunner.java" type="org.eclipse.jdt.launching.AbstractVMRunner">
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="isModular(VMRunnerConfiguration, IVMInstall)"/>
+            </message_arguments>
+        </filter>
+    </resource>
+    <resource path="launching/org/eclipse/jdt/launching/IJavaLaunchConfigurationConstants.java" type="org.eclipse.jdt.launching.IJavaLaunchConfigurationConstants">
+        <filter id="1209008130">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="ATTR_MODULEPATH"/>
+            </message_arguments>
+        </filter>
+    </resource>
+    <resource path="launching/org/eclipse/jdt/launching/IRuntimeClasspathEntry.java" type="org.eclipse.jdt.launching.IRuntimeClasspathEntry">
+        <filter id="1209008130">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="CLASS_PATH"/>
+            </message_arguments>
+        </filter>
+        <filter id="1209008130">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="MODULE_PATH"/>
+            </message_arguments>
+        </filter>
+        <filter id="1209008130">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="isAutomodule()"/>
+            </message_arguments>
+        </filter>
+    </resource>
+    <resource path="launching/org/eclipse/jdt/launching/JavaRuntime.java" type="org.eclipse.jdt.launching.JavaRuntime">
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="computeModularJREEntry(IJavaProject)"/>
+            </message_arguments>
+        </filter>
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="computeUnresolvedRuntimeDependencies(IJavaProject)"/>
+            </message_arguments>
+        </filter>
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="isModularConfiguration(ILaunchConfiguration)"/>
+            </message_arguments>
+        </filter>
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="isModularJava(IVMInstall)"/>
+            </message_arguments>
+        </filter>
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="isModularProject(IJavaProject)"/>
+            </message_arguments>
+        </filter>
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="isModule(IClasspathEntry, IJavaProject)"/>
+            </message_arguments>
+        </filter>
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="newArchiveRuntimeClasspathEntry(IPath, IPath, IPath, IAccessRule[], IClasspathAttribute[], boolean)"/>
+            </message_arguments>
+        </filter>
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="newArchiveRuntimeClasspathEntry(IPath, int)"/>
+            </message_arguments>
+        </filter>
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="newProjectRuntimeClasspathEntry(IJavaProject, int)"/>
+            </message_arguments>
+        </filter>
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="newRuntimeContainerClasspathEntry(IClasspathEntry, IJavaProject)"/>
+            </message_arguments>
+        </filter>
+    </resource>
+    <resource path="launching/org/eclipse/jdt/launching/VMRunnerConfiguration.java" type="org.eclipse.jdt.launching.VMRunnerConfiguration">
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="getModuleDescription()"/>
+            </message_arguments>
+        </filter>
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="getModulepath()"/>
+            </message_arguments>
+        </filter>
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="setModuleDescription(String)"/>
+            </message_arguments>
+        </filter>
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="3.10"/>
+                <message_argument value="3.9"/>
+                <message_argument value="setModulepath(String[])"/>
+            </message_arguments>
+        </filter>
     </resource>
     <resource path="launching/org/eclipse/jdt/launching/sourcelookup/LocalFileStorage.java" type="org.eclipse.jdt.launching.sourcelookup.LocalFileStorage">
         <filter comment="Known illegal extension" id="571473929">
diff --git a/org.eclipse.jdt.launching/META-INF/MANIFEST.MF b/org.eclipse.jdt.launching/META-INF/MANIFEST.MF
index 03a978b..74827e8 100644
--- a/org.eclipse.jdt.launching/META-INF/MANIFEST.MF
+++ b/org.eclipse.jdt.launching/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
 Bundle-SymbolicName: org.eclipse.jdt.launching; singleton:=true
-Bundle-Version: 3.9.0.qualifier
+Bundle-Version: 3.9.50.qualifier
 Bundle-Activator: org.eclipse.jdt.internal.launching.LaunchingPlugin
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
diff --git a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/internal/launching/environments/ExecutionEnvironmentAnalyzer.java b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/internal/launching/environments/ExecutionEnvironmentAnalyzer.java
index 980a141..a4e3ea9 100644
--- a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/internal/launching/environments/ExecutionEnvironmentAnalyzer.java
+++ b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/internal/launching/environments/ExecutionEnvironmentAnalyzer.java
@@ -5,10 +5,6 @@
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
  *
- * This is an implementation of an early-draft specification developed under the Java
- * Community Process (JCP) and is made available for testing and evaluation purposes
- * only. The code is not compatible with any specification of the JCP.
- *
  * Contributors:
  *     IBM Corporation - initial API and implementation
  *******************************************************************************/
diff --git a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/AbstractJavaLaunchConfigurationDelegate.java b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/AbstractJavaLaunchConfigurationDelegate.java
index 3de927d..f7f7388 100644
--- a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/AbstractJavaLaunchConfigurationDelegate.java
+++ b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/AbstractJavaLaunchConfigurationDelegate.java
@@ -434,7 +434,7 @@
 	 * @return the classpath and modulepath specified by the given launch configuration, possibly an empty array
 	 * @exception CoreException
 	 *                if unable to retrieve the attribute
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public String[][] getClasspathAndModulepath(ILaunchConfiguration config) throws CoreException {
 		IRuntimeClasspathEntry[] entries = JavaRuntime.computeUnresolvedRuntimeClasspath(config);
diff --git a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/AbstractVMRunner.java b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/AbstractVMRunner.java
index cfe6696..de281cd 100644
--- a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/AbstractVMRunner.java
+++ b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/AbstractVMRunner.java
@@ -110,10 +110,13 @@
 
 	private static boolean needsQuoting(String s) {
 		int len = s.length();
-		if (len == 0) // empty string has to be quoted
+		if (len == 0) {
 			return true;
+		}
 		if ("\"\"".equals(s)) //$NON-NLS-1$
+		 {
 			return false; // empty quotes must not be quoted again
+		}
 		for (int i = 0; i < len; i++) {
 			switch (s.charAt(i)) {
 				case ' ': case '\t': case '\\': case '"':
@@ -124,8 +127,9 @@
 	}
 
 	private static String winQuote(String s) {
-		if (! needsQuoting(s))
+		if (! needsQuoting(s)) {
 			return s;
+		}
 		s = s.replaceAll("([\\\\]*)\"", "$1$1\\\\\""); //$NON-NLS-1$ //$NON-NLS-2$
 		s = s.replaceAll("([\\\\]*)\\z", "$1$1"); //$NON-NLS-1$ //$NON-NLS-2$
 		return "\"" + s + "\""; //$NON-NLS-1$ //$NON-NLS-2$
@@ -218,7 +222,7 @@
 	 * @param vmInstall
 	 *            VM install
 	 * @return <code>true</code> if project is a module and uses JRE version 9 or more, or <code>false</code> otherwise
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	protected boolean isModular(VMRunnerConfiguration config, IVMInstall vmInstall) {
 		if (config.getModuleDescription() != null && config.getModuleDescription().length() > 0 && vmInstall instanceof AbstractVMInstall) {
diff --git a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/IJavaLaunchConfigurationConstants.java b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/IJavaLaunchConfigurationConstants.java
index 83b7548..46d1419 100644
--- a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/IJavaLaunchConfigurationConstants.java
+++ b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/IJavaLaunchConfigurationConstants.java
@@ -176,11 +176,11 @@
 	public static final String ATTR_CLASSPATH = LaunchingPlugin.getUniqueIdentifier() + ".CLASSPATH";	 //$NON-NLS-1$
 
 	/**
-	 * Launch configuration attribute key. The attribute value is an ordered list of strings
-	 * which are mementos for runtime module path entries. When unspecified, a default
-	 * modulepath is generated by the dependency provider associated with a launch
-	 * configuration (via the <code>ATTR_CLASSPATH_PROVIDER</code> attribute).
-	 * @since 3.9
+	 * Launch configuration attribute key. The attribute value is an ordered list of strings which are mementos for runtime module path entries. When
+	 * unspecified, a default modulepath is generated by the dependency provider associated with a launch configuration (via the
+	 * <code>ATTR_CLASSPATH_PROVIDER</code> attribute).
+	 * 
+	 * @since 3.10
 	 */
 	public static final String ATTR_MODULEPATH = LaunchingPlugin.getUniqueIdentifier() + ".MODULEPATH"; //$NON-NLS-1$
 
diff --git a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/IRuntimeClasspathEntry.java b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/IRuntimeClasspathEntry.java
index 852212c..8b25ce5 100644
--- a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/IRuntimeClasspathEntry.java
+++ b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/IRuntimeClasspathEntry.java
@@ -96,12 +96,12 @@
 	public static final int USER_CLASSES = 3;
 
 	/**
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public static final int MODULE_PATH = 4;
 
 	/**
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public static final int CLASS_PATH = 5;
 
@@ -362,7 +362,7 @@
 	 * Returns <code>true</code> if the java project associated is an AutoModule.
 	 *
 	 * @return <code>true</code> if the Java project associated is an AutoModule or <code>false</code> if not
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public boolean isAutomodule();
 }
diff --git a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/JavaRuntime.java b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/JavaRuntime.java
index de756bc..4d9d3da 100644
--- a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/JavaRuntime.java
+++ b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/JavaRuntime.java
@@ -644,11 +644,11 @@
 	 *
 	 * @param project
 	 *            Java project
-	 * @param classpathProperty the type of entry - one of <code>USER_CLASSES</code>,
-	 * 	<code>BOOTSTRAP_CLASSES</code>,<code>STANDARD_CLASSES</code>, <code>MODULE_PATH</code>
-	 *  or <code>CLASS_PATH</code>
+	 * @param classpathProperty
+	 *            the type of entry - one of <code>USER_CLASSES</code>, <code>BOOTSTRAP_CLASSES</code>,<code>STANDARD_CLASSES</code>,
+	 *            <code>MODULE_PATH</code> or <code>CLASS_PATH</code>
 	 * @return runtime classpath entry
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public static IRuntimeClasspathEntry newProjectRuntimeClasspathEntry(IJavaProject project, int classpathProperty) {
 		return newRuntimeClasspathEntry(JavaCore.newProjectEntry(project.getProject().getFullPath()), classpathProperty);
@@ -667,15 +667,15 @@
 	}
 
 	/**
-	 * Returns a new runtime classpath entry for the given archive(possibly
-	 * external).
+	 * Returns a new runtime classpath entry for the given archive(possibly external).
 	 *
-	 * @param path absolute path to an archive
-	 * @param classpathProperty the type of entry - one of <code>USER_CLASSES</code>,
-	 * 	<code>BOOTSTRAP_CLASSES</code>,<code>STANDARD_CLASSES</code>, <code>MODULE_PATH</code>
-	 *  or <code>CLASS_PATH</code>
+	 * @param path
+	 *            absolute path to an archive
+	 * @param classpathProperty
+	 *            the type of entry - one of <code>USER_CLASSES</code>, <code>BOOTSTRAP_CLASSES</code>,<code>STANDARD_CLASSES</code>,
+	 *            <code>MODULE_PATH</code> or <code>CLASS_PATH</code>
 	 * @return runtime classpath entry
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public static IRuntimeClasspathEntry newArchiveRuntimeClasspathEntry(IPath path, int classpathProperty) {
 		return newRuntimeClasspathEntry(JavaCore.newLibraryEntry(path, null, null), classpathProperty);
@@ -694,22 +694,25 @@
 	}
 
 	/**
-	 * Returns a new runtime classpath entry for the given archive (possibly
-	 * external).
+	 * Returns a new runtime classpath entry for the given archive (possibly external).
 	 *
-	 * @param path absolute path to an archive
- 	 * @param sourceAttachmentPath the absolute path of the corresponding source archive or folder,
-	 *   or <code>null</code> if none. Note, since 3.0, an empty path is allowed to denote no source attachment.
-	 *   and will be automatically converted to <code>null</code>. Since 3.4, this path can also denote a path external
-	 *   to the workspace.
-	 * @param sourceAttachmentRootPath the location of the root of the source files within the source archive or folder
-	 *    or <code>null</code> if this location should be automatically detected.
-	 * @param accessRules the possibly empty list of access rules for this entry
-	 * @param extraAttributes the possibly empty list of extra attributes to persist with this entry
-	 * @param isExported indicates whether this entry is contributed to dependent
-	 * 	  projects in addition to the output location
+	 * @param path
+	 *            absolute path to an archive
+	 * @param sourceAttachmentPath
+	 *            the absolute path of the corresponding source archive or folder, or <code>null</code> if none. Note, since 3.0, an empty path is
+	 *            allowed to denote no source attachment. and will be automatically converted to <code>null</code>. Since 3.4, this path can also
+	 *            denote a path external to the workspace.
+	 * @param sourceAttachmentRootPath
+	 *            the location of the root of the source files within the source archive or folder or <code>null</code> if this location should be
+	 *            automatically detected.
+	 * @param accessRules
+	 *            the possibly empty list of access rules for this entry
+	 * @param extraAttributes
+	 *            the possibly empty list of extra attributes to persist with this entry
+	 * @param isExported
+	 *            indicates whether this entry is contributed to dependent projects in addition to the output location
 	 * @return runtime classpath entry
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public static IRuntimeClasspathEntry newArchiveRuntimeClasspathEntry(IPath path, IPath sourceAttachmentPath, IPath sourceAttachmentRootPath, IAccessRule[] accessRules, IClasspathAttribute[] extraAtributes, boolean isExported) {
 		return newRuntimeClasspathEntry(JavaCore.newLibraryEntry(path, sourceAttachmentPath, sourceAttachmentRootPath, accessRules, extraAtributes, isExported));
@@ -765,7 +768,7 @@
 	}
 
 	/**
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public static IRuntimeClasspathEntry newRuntimeContainerClasspathEntry(IClasspathEntry entry, IJavaProject project) {
 		RuntimeClasspathEntry runTimeEntry = new RuntimeClasspathEntry(entry, isModule(entry, project) ? IRuntimeClasspathEntry.MODULE_PATH
@@ -900,7 +903,7 @@
 	 * @exception CoreException
 	 *                if unable to compute the runtime classpath
 	 * @see IRuntimeClasspathEntry
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public static IRuntimeClasspathEntry[] computeUnresolvedRuntimeDependencies(IJavaProject project) throws CoreException {
 		IClasspathEntry[] entries = project.getResolvedClasspath(true);
@@ -986,7 +989,7 @@
 	 * @param entry
 	 *            the classpath entry
 	 * @return boolean <code>true</code> if entry is module else <code>false</code>
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public static boolean isModule(IClasspathEntry entry, IJavaProject proj) {
 		if (!isModularProject(proj)) {
@@ -1011,7 +1014,7 @@
 	 * @param configuration
 	 *            the launch configuration
 	 * @return boolean <code>true</code> if jre used in configuration is greater than 8 else <code>false</code>
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public static boolean isModularConfiguration(ILaunchConfiguration configuration) {
 
@@ -1032,7 +1035,7 @@
 	 * @param entry
 	 *            the vm install
 	 * @return boolean <code>true</code> if vm install is modular else <code>false</code>
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public static boolean isModularJava(IVMInstall vm) {
 
@@ -1057,7 +1060,7 @@
 	 * @param entry
 	 *            the project
 	 * @return boolean <code>true</code> if project is modular else <code>false</code>
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public static boolean isModularProject(IJavaProject proj) {
 
@@ -2408,7 +2411,7 @@
 	 * @return JRE runtime classpath entry or <code>null</code>
 	 * @exception org.eclipse.core.runtime.CoreException
 	 *                if an exception occurs accessing the project's classpath
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public static IRuntimeClasspathEntry computeModularJREEntry(IJavaProject project) throws CoreException {
 		IClasspathEntry[] rawClasspath = project.getRawClasspath();
diff --git a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/VMRunnerConfiguration.java b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/VMRunnerConfiguration.java
index e1a5637..390bd5d 100644
--- a/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/VMRunnerConfiguration.java
+++ b/org.eclipse.jdt.launching/launching/org/eclipse/jdt/launching/VMRunnerConfiguration.java
@@ -272,7 +272,7 @@
 	 *
 	 * @param modulepath
 	 *            modulepath
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public void setModulepath(String[] modulepath) {
 		this.fModulepath = modulepath;
@@ -282,7 +282,7 @@
 	 * Returns the Modulepath.
 	 *
 	 * @return the modulepath
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public String[] getModulepath() {
 		return this.fModulepath;
@@ -293,7 +293,7 @@
 	 *
 	 * @param fModuleDescription
 	 *            fModuleDescription
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public void setModuleDescription(String fModuleDescription) {
 		this.fModuleDescription = fModuleDescription;
@@ -303,7 +303,7 @@
 	 * Returns the ModuleDescription.
 	 *
 	 * @return the ModuleDescription
-	 * @since 3.9
+	 * @since 3.10
 	 */
 	public String getModuleDescription() {
 		return this.fModuleDescription;
diff --git a/org.eclipse.jdt.launching/pom.xml b/org.eclipse.jdt.launching/pom.xml
index 7ec3ea8..bbc967c 100644
--- a/org.eclipse.jdt.launching/pom.xml
+++ b/org.eclipse.jdt.launching/pom.xml
@@ -18,7 +18,7 @@
   </parent>
   <groupId>org.eclipse.jdt</groupId>
   <artifactId>org.eclipse.jdt.launching</artifactId>
-  <version>3.9.0-SNAPSHOT</version>
+  <version>3.9.50-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
   
   <build>