Merge remote-tracking branch 'origin/master' into BETA_JAVA9
diff --git a/org.eclipse.jdt.debug.jdi.tests/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jdt.debug.jdi.tests/.settings/org.eclipse.jdt.core.prefs
index 9a49fb5..f74b1e7 100644
--- a/org.eclipse.jdt.debug.jdi.tests/.settings/org.eclipse.jdt.core.prefs
+++ b/org.eclipse.jdt.debug.jdi.tests/.settings/org.eclipse.jdt.core.prefs
@@ -89,7 +89,7 @@
 org.eclipse.jdt.core.compiler.problem.rawTypeReference=error

 org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning

 org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore

-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore

+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning

 org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore

 org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore

 org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore

diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AbstractJDITest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AbstractJDITest.java
index 12ba90b..ba97d95 100644
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AbstractJDITest.java
+++ b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/AbstractJDITest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2013 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -134,7 +134,7 @@
 	protected Vector<String> getAllMatchingTests(String match) {
 		Class<? extends AbstractJDITest> theClass = this.getClass();
 		java.lang.reflect.Method[] methods = theClass.getDeclaredMethods();
-		Vector<String> result = new Vector<String>();
+		Vector<String> result = new Vector<>();
 		for (int i = 0; i < methods.length; i++) {
 			java.lang.reflect.Method m = methods[i];
 			String name = m.getName();
@@ -707,7 +707,7 @@
 			fLaunchedProxy = Runtime.getRuntime().exec(proxyString);
 
 			// Launch target VM
-			Vector<String> commandLine = new Vector<String>();
+			Vector<String> commandLine = new Vector<>();
 			
 			String launcher = binDirectory + "j9w.exe";
 			File vm= new File(launcher);
@@ -745,7 +745,7 @@
 			binDirectory.append(System.getProperty("file.separator"));
 			binDirectory.append("bin").append(System.getProperty("file.separator"));
 
-			Vector<String> commandLine = new Vector<String>();
+			Vector<String> commandLine = new Vector<>();
 
 			String launcher = binDirectory.toString() + "javaw.exe";
 			File vm= new File(launcher);
@@ -785,7 +785,7 @@
 					+ "bin"
 					+ System.getProperty("file.separator");
 
-			Vector<String> commandLine = new Vector<String>();
+			Vector<String> commandLine = new Vector<>();
 
 			commandLine.add(binDirectory + "javaw");
 			if (fBootPath.length() > 0) {
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassTypeTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassTypeTest.java
index cd324fd..3888300 100644
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassTypeTest.java
+++ b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ClassTypeTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2012 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -161,7 +161,7 @@
 			fType.concreteMethodByName(
 				"invoke1",
 				"(ILjava/lang/Object;)Ljava/lang/String;");
-		List<IntegerValue> args = new ArrayList<IntegerValue>();
+		List<IntegerValue> args = new ArrayList<>();
 		args.add(fVM.mirrorOf(41));
 		args.add(null);
 		Exception oops = null;
@@ -262,7 +262,7 @@
 			.methodsByName("<init>", "(ILjava/lang/Object;Ljava/lang/Object;)V")
 			.get(0);
 		ObjectReference result = null;
-		ArrayList<Value> arguments = new ArrayList<Value>();
+		ArrayList<Value> arguments = new ArrayList<>();
 		arguments.add(fVM.mirrorOf(0));
 		arguments.add(fVM.allThreads().get(0));
 		arguments.add(null);
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventReader.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventReader.java
index 8995c96..07bf849 100644
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventReader.java
+++ b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventReader.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2012 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -40,7 +40,7 @@
 
 public class EventReader extends AbstractReader {
 	private EventQueue fEventQueue;
-	private Vector<EventListener> fEventListeners = new Vector<EventListener>(); // A Vector of EventListener
+	private Vector<EventListener> fEventListeners = new Vector<>(); // A Vector of EventListener
 
 	/**
 	 * Constructor
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventRequestTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventRequestTest.java
index 06db993..4c82654 100644
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventRequestTest.java
+++ b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventRequestTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2012 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -22,7 +22,7 @@
  */
 public class EventRequestTest extends AbstractJDITest {
 
-	private List<EventRequest> fRequests = new LinkedList<EventRequest>();
+	private List<EventRequest> fRequests = new LinkedList<>();
 	/**
 	 * Creates a new test.
 	 */
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventTest.java
index 1d19716..6b3812c 100644
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventTest.java
+++ b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/EventTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2012 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -22,7 +22,7 @@
  * Tests for JDI com.sun.jdi.event.Event.
  */
 public class EventTest extends AbstractJDITest {
-	private HashMap<EventRequest, Event> fAllEvents = new HashMap<EventRequest, Event>();
+	private HashMap<EventRequest, Event> fAllEvents = new HashMap<>();
 	/**
 	 * Creates a new test.
 	 */
@@ -81,7 +81,7 @@
 
 		// Remove the requests
 		fVM.eventRequestManager().deleteEventRequests(
-			new LinkedList<EventRequest>(fAllEvents.keySet()));
+			new LinkedList<>(fAllEvents.keySet()));
 
 		// Set the value of the "fBool" field back to its original value
 		resetField();
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/HeapWalkingTests.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/HeapWalkingTests.java
index c7d15de..70a7f06 100644
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/HeapWalkingTests.java
+++ b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/HeapWalkingTests.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2012 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -97,7 +97,7 @@
 		}
 		triggerAndWait(fVM.eventRequestManager().createClassPrepareRequest(), "refclass3load", true);
 		triggerAndWait(fVM.eventRequestManager().createClassPrepareRequest(), "refclassload", true);
-		ArrayList<ReferenceType> list = new ArrayList<ReferenceType>(2);
+		ArrayList<ReferenceType> list = new ArrayList<>(2);
 		fClass = getClass("org.eclipse.debug.jdi.tests.program.RefClass1");
 		assertNotNull("RefClass should not be null", fClass);
 		list.add(fClass);
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocatableTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocatableTest.java
index 65e4cb2..c33353b 100644
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocatableTest.java
+++ b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/LocatableTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2012 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -29,8 +29,8 @@
  */
 public class LocatableTest extends AbstractJDITest {
 
-	private List<Mirror> fLocatables = new LinkedList<Mirror>();
-	private List<EventRequest> fRequests = new LinkedList<EventRequest>();
+	private List<Mirror> fLocatables = new LinkedList<>();
+	private List<EventRequest> fRequests = new LinkedList<>();
 	/**
 	 * Creates a new test.
 	 */
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MirrorTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MirrorTest.java
index 1a422f8..f4940e9 100644
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MirrorTest.java
+++ b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/MirrorTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2012 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -23,7 +23,7 @@
  * Tests for JDI com.sun.jdi.Mirror.
  */
 public class MirrorTest extends AbstractJDITest {
-	List<Mirror> fMirrors = new LinkedList<Mirror>();
+	List<Mirror> fMirrors = new LinkedList<>();
 	/**
 	 * Creates a new test.
 	 */
@@ -40,7 +40,7 @@
 
 		//TO DO: Add events too
 
-		fMirrors = new LinkedList<Mirror>();
+		fMirrors = new LinkedList<>();
 
 		if (fVM.canWatchFieldAccess())
 			fMirrors.add(getAccessWatchpointRequest());
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ObjectReferenceTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ObjectReferenceTest.java
index 95aa021..6a5d8ae 100644
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ObjectReferenceTest.java
+++ b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ObjectReferenceTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2012 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -142,7 +142,7 @@
 		ReferenceType type = fObject.referenceType();
 		List<?> fields = type.fields();
 		ListIterator<?> iterator = fields.listIterator();
-		List<Field> instanceFields = new LinkedList<Field>();
+		List<Field> instanceFields = new LinkedList<>();
 		while (iterator.hasNext()) {
 			Field field = (Field) iterator.next();
 			if (!field.isStatic())
@@ -213,7 +213,7 @@
 		ClassType ct = (ClassType) fObject.referenceType();
 		Method inv =
 			ct.concreteMethodByName("invoke3", "(Ljava/lang/String;Ljava/lang/Object;)I");
-		List<StringReference> args = new ArrayList<StringReference>();
+		List<StringReference> args = new ArrayList<>();
 		args.add(fVM.mirrorOf("888"));
 		args.add(null);
 		Exception oops = null;
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ReferenceTypeTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ReferenceTypeTest.java
index d9f4849..d6e8694 100644
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ReferenceTypeTest.java
+++ b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/ReferenceTypeTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2012 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -28,7 +28,7 @@
  */
 public class ReferenceTypeTest extends AbstractJDITest {
 
-	private List<ReferenceType> fTypes = new LinkedList<ReferenceType>();
+	private List<ReferenceType> fTypes = new LinkedList<>();
 
 	// These must match what is done in localSetUp
 	private boolean[] fSystemClassLoader = { true, true, false, false };
@@ -192,7 +192,7 @@
 		// Get field values
 		List<?> fields = type.fields();
 		ListIterator<?> iterator = fields.listIterator();
-		List<Field> staticFields = new LinkedList<Field>();
+		List<Field> staticFields = new LinkedList<>();
 		while (iterator.hasNext()) {
 			Field field = (Field) iterator.next();
 			if (field.isStatic())
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StackFrameTest.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StackFrameTest.java
index cf7de3e..c2ab6b5 100644
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StackFrameTest.java
+++ b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/StackFrameTest.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2012 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -108,7 +108,7 @@
 		assertEquals("2", thread, value);
 
 		// getValues(List)
-		List<LocalVariable> vars = new LinkedList<LocalVariable>();
+		List<LocalVariable> vars = new LinkedList<>();
 		vars.add(var);
 		Map<?, ?> values = fFrame.getValues(vars);
 		value = (ThreadReference) values.get(var);
diff --git a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TestAll.java b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TestAll.java
index 7ab77bb..5e1c71c 100644
--- a/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TestAll.java
+++ b/org.eclipse.jdt.debug.jdi.tests/tests/org/eclipse/debug/jdi/tests/TestAll.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2000, 2013 IBM Corporation and others.
+ * Copyright (c) 2000, 2015 IBM Corporation and others.
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
@@ -27,7 +27,7 @@
 	 *      it shuts the VM down.
 	 */
 	protected static Vector<Class<?>> getAllTestCases(VMInformation info) {
-		Vector<Class<?>> classes = new Vector<Class<?>>();
+		Vector<Class<?>> classes = new Vector<>();
 		classes.addElement(AccessibleTest.class);
 		classes.addElement(ArrayReferenceTest.class);
 		classes.addElement(ArrayTypeTest.class);
diff --git a/org.eclipse.jdt.debug.tests/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jdt.debug.tests/.settings/org.eclipse.jdt.core.prefs
index 230e559..09472a8 100644
--- a/org.eclipse.jdt.debug.tests/.settings/org.eclipse.jdt.core.prefs
+++ b/org.eclipse.jdt.debug.tests/.settings/org.eclipse.jdt.core.prefs
@@ -89,7 +89,7 @@
 org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning

 org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning

 org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore

-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore

+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning

 org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore

 org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore

 org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore

diff --git a/org.eclipse.jdt.debug.ui/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jdt.debug.ui/.settings/org.eclipse.jdt.core.prefs
index e564ce1..71eaf08 100644
--- a/org.eclipse.jdt.debug.ui/.settings/org.eclipse.jdt.core.prefs
+++ b/org.eclipse.jdt.debug.ui/.settings/org.eclipse.jdt.core.prefs
@@ -89,7 +89,7 @@
 org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning

 org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning

 org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore

-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore

+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning

 org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore

 org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore

 org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore

diff --git a/org.eclipse.jdt.debug.ui/META-INF/MANIFEST.MF b/org.eclipse.jdt.debug.ui/META-INF/MANIFEST.MF
index 60dfee6..14efd39 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.7.0.qualifier
+Bundle-Version: 3.7.100.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 e8359f6..fa0083a 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.7.0-SNAPSHOT</version>
+  <version>3.7.100-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
   <build>
     <plugins>
diff --git a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaApplicationLaunchShortcut.java b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaApplicationLaunchShortcut.java
index 1b9c60e..4b82721 100644
--- a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaApplicationLaunchShortcut.java
+++ b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/debug/ui/launchConfigurations/JavaApplicationLaunchShortcut.java
@@ -18,6 +18,8 @@
 import org.eclipse.core.resources.IResource;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
 import org.eclipse.debug.core.DebugPlugin;
 import org.eclipse.debug.core.ILaunchConfiguration;
 import org.eclipse.debug.core.ILaunchConfigurationType;
@@ -131,7 +133,7 @@
 			IJavaSearchScope scope = SearchEngine.createJavaSearchScope(javaElements, constraints);
 			return engine.searchMainMethods(context, scope, true);
 		} catch (InvocationTargetException e) {
-			throw (CoreException)e.getTargetException(); 
+			throw new CoreException(new Status(IStatus.ERROR, JDIDebugUIPlugin.getUniqueIdentifier(), e.getMessage(), e));
 		}
 	}
 	
diff --git a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/JDIDebugUIPlugin.java b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/JDIDebugUIPlugin.java
index 3f878a1..23b4675 100644
--- a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/JDIDebugUIPlugin.java
+++ b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/JDIDebugUIPlugin.java
@@ -207,11 +207,7 @@
 	 * @param e the exception to be logged
 	 */	
 	public static void log(Throwable e) {
-		if (e instanceof CoreException) {
-			log(new Status(IStatus.ERROR, getUniqueIdentifier(), IStatus.ERROR, e.getMessage(), e.getCause()));
-		} else {
-			log(new Status(IStatus.ERROR, getUniqueIdentifier(), IJavaDebugUIConstants.INTERNAL_ERROR, "Internal Error", e));   //$NON-NLS-1$
-		}
+		log(new Status(IStatus.ERROR, getUniqueIdentifier(), IJavaDebugUIConstants.INTERNAL_ERROR, "Internal Error", e));   //$NON-NLS-1$
 	}
 	
 	/**
diff --git a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/actions/PopupInspectAction.java b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/actions/PopupInspectAction.java
index a9d73d2..d297879 100644
--- a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/actions/PopupInspectAction.java
+++ b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/actions/PopupInspectAction.java
@@ -60,7 +60,7 @@
         	@Override
 			public boolean close() {
         		boolean returnValue = super.close();
-        		if (fTextEditor != null && fSelectionBeforeEvaluation != null){
+				if (fTextEditor != null && fTextEditor.getSelectionProvider() != null && fSelectionBeforeEvaluation != null) {
         			fTextEditor.getSelectionProvider().setSelection(fSelectionBeforeEvaluation);
         			fTextEditor = null;
         			fSelectionBeforeEvaluation = null;
diff --git a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/jres/JREsPreferencePage.java b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/jres/JREsPreferencePage.java
index cee9aa8..7ffd03e 100644
--- a/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/jres/JREsPreferencePage.java
+++ b/org.eclipse.jdt.debug.ui/ui/org/eclipse/jdt/internal/debug/ui/jres/JREsPreferencePage.java
@@ -211,7 +211,7 @@
 		IEclipsePreferences setting = InstanceScope.INSTANCE.getNode(JavaCore.PLUGIN_ID);
 		if(getContainer() instanceof IWorkbenchPreferenceContainer) {
 			IEclipsePreferences wcs = ((IWorkbenchPreferenceContainer)getContainer()).getWorkingCopyManager().getWorkingCopy(setting);
-			return wcs.get(JavaCore.COMPILER_COMPLIANCE, (String) JavaCore.getDefaultOptions().get(JavaCore.COMPILER_COMPLIANCE));
+			return wcs.get(JavaCore.COMPILER_COMPLIANCE, JavaCore.getDefaultOptions().get(JavaCore.COMPILER_COMPLIANCE));
 		}
 			return JavaCore.getOption(JavaCore.COMPILER_COMPLIANCE);
 		
diff --git a/org.eclipse.jdt.debug/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jdt.debug/.settings/org.eclipse.jdt.core.prefs
index 1796890..e8f6e63 100644
--- a/org.eclipse.jdt.debug/.settings/org.eclipse.jdt.core.prefs
+++ b/org.eclipse.jdt.debug/.settings/org.eclipse.jdt.core.prefs
@@ -89,7 +89,7 @@
 org.eclipse.jdt.core.compiler.problem.rawTypeReference=error

 org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning

 org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore

-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore

+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning

 org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore

 org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore

 org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore

diff --git a/org.eclipse.jdt.launching/.settings/org.eclipse.jdt.core.prefs b/org.eclipse.jdt.launching/.settings/org.eclipse.jdt.core.prefs
index 507f385..619a05b 100644
--- a/org.eclipse.jdt.launching/.settings/org.eclipse.jdt.core.prefs
+++ b/org.eclipse.jdt.launching/.settings/org.eclipse.jdt.core.prefs
@@ -89,7 +89,7 @@
 org.eclipse.jdt.core.compiler.problem.rawTypeReference=error

 org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning

 org.eclipse.jdt.core.compiler.problem.redundantNullCheck=ignore

-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore

+org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=warning

 org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=ignore

 org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore

 org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore

diff --git a/org.eclipse.jdt.launching/pom.xml b/org.eclipse.jdt.launching/pom.xml
index 79f76d3..851299b 100644
--- a/org.eclipse.jdt.launching/pom.xml
+++ b/org.eclipse.jdt.launching/pom.xml
@@ -25,7 +25,6 @@
         <plugins>
           <plugin>
             <artifactId>maven-antrun-plugin</artifactId>
-            <version> 1.7 </version>
             <executions>
               <execution>
                 <id>compile-internal-jar</id>
@@ -41,28 +40,6 @@
                 </goals>
               </execution>
             </executions>
-            <dependencies>
-              <dependency>
-                <groupId>bsf</groupId>
-                <artifactId>bsf</artifactId>
-                <version>2.4.0</version>
-              </dependency>
-              <dependency>
-                <groupId>rhino</groupId>
-                <artifactId>js</artifactId>
-                <version>1.7R2</version>
-              </dependency>
-              <dependency>
-                <groupId>org.apache.ant</groupId>
-                <artifactId>ant-apache-bsf</artifactId>
-                <version>1.8.3</version>
-              </dependency>
-              <dependency>
-                <groupId>org.apache.ant</groupId>
-                <artifactId>ant-nodeps</artifactId>
-                <version>1.8.1</version>
-              </dependency>
-            </dependencies>
           </plugin>
         </plugins>
       </build>
diff --git a/org.eclipse.jdt.launching/schema/executionEnvironments.exsd b/org.eclipse.jdt.launching/schema/executionEnvironments.exsd
index e88bff5..f777cf1 100644
--- a/org.eclipse.jdt.launching/schema/executionEnvironments.exsd
+++ b/org.eclipse.jdt.launching/schema/executionEnvironments.exsd
@@ -187,7 +187,7 @@
          <meta.section type="implementation"/>
       </appInfo>
       <documentation>
-         JDT (&lt;code&gt;org.eclispe.jdt.launching&lt;/code&gt;) provides definitions and an analyzer for the following execution environments. Since 3.5, a default access rule participant provides access rules for system packages assocaited with an execution environment. System packages are specified by an OSGi profile properties file (see &lt;code&gt;profileProperties&lt;/code&gt; above) via the &lt;code&gt;org.osgi.framework.system.packages&lt;/code&gt; property.
+         JDT (&lt;code&gt;org.eclipse.jdt.launching&lt;/code&gt;) currently provides definitions and an analyzer for the following execution environments:
 &lt;ul&gt;
 &lt;li&gt;OSGi/Minimum-1.0&lt;/li&gt;
 &lt;li&gt;OSGi/Minimum-1.1&lt;/li&gt;
@@ -198,9 +198,12 @@
 &lt;li&gt;J2SE-1.4&lt;/li&gt;
 &lt;li&gt;J2SE-1.5&lt;/li&gt;
 &lt;li&gt;JavaSE-1.6&lt;/li&gt;
+&lt;li&gt;JavaSE-1.7&lt;/li&gt;
+&lt;li&gt;JavaSE-1.8&lt;/li&gt;
 &lt;li&gt;CDC-1.0/Foundation-1.0&lt;/li&gt;
 &lt;li&gt;CDC-1.1/Foundation-1.1&lt;/li&gt;
 &lt;/ul&gt;
+Since 3.5, a default access rule participant provides access rules for system packages associated with an execution environment. System packages are specified by an OSGi profile properties file (see &lt;code&gt;profileProperties&lt;/code&gt; above) via the &lt;code&gt;org.osgi.framework.system.packages&lt;/code&gt; property.
       </documentation>
    </annotation>
 
@@ -209,7 +212,7 @@
          <meta.section type="copyright"/>
       </appInfo>
       <documentation>
-         Copyright (c) 2005, 2008 IBM Corporation and others.&lt;br&gt;
+         Copyright (c) 2005, 2015 IBM Corporation and others.&lt;br&gt;
 All rights reserved. This program and the accompanying materials are made 
 available under the terms of the Eclipse Public License v1.0 which 
 accompanies this distribution, and is available at 
diff --git a/pom.xml b/pom.xml
index 79bd354..914e16f 100644
--- a/pom.xml
+++ b/pom.xml
@@ -15,31 +15,41 @@
   <parent>
     <groupId>org.eclipse</groupId>
     <artifactId>eclipse-platform-parent</artifactId>
-    <version>4.5.0-SNAPSHOT</version>
+    <version>4.6.0-SNAPSHOT</version>
     <relativePath>../eclipse-platform-parent</relativePath>
   </parent>
 
   <groupId>eclipse.jdt.debug</groupId>
   <artifactId>eclipse.jdt.debug</artifactId>
-  <version>4.5.0-SNAPSHOT</version>
+  <version>4.6.0-SNAPSHOT</version>
   <packaging>pom</packaging>
 
   <properties>
     <tycho.scmUrl>scm:git:git://git.eclipse.org/gitroot/jdt/eclipse.jdt.debug.git</tycho.scmUrl>
   </properties>
 
-  <repositories>
-    <repository>
-      <releases>
-        <enabled>true</enabled>
-      </releases>
-      <snapshots>
-        <enabled>true</enabled>
-      </snapshots>
-      <id>eclipse-hosted</id>
-      <url>https://repo.eclipse.org/content/repositories/eclipse/</url>
-    </repository>
-  </repositories>
+  <!-- 
+    To build individual bundles, we specify a repository where to find parent pom, 
+    in case it is not in local maven cache already
+    and that parent pom also has fuller individual-bundle profile 
+    defined that is combined with this one. --> 
+  <profiles>
+    <profile>
+      <id>build-individual-bundles</id>
+      <repositories>
+        <repository>
+          <releases>
+            <enabled>true</enabled>
+          </releases>
+          <snapshots>
+            <enabled>true</enabled>
+          </snapshots>
+          <id>eclipse-hosted</id>
+          <url>https://repo.eclipse.org/content/repositories/eclipse/</url>
+        </repository>
+      </repositories>
+    </profile>
+  </profiles>
 
   <modules>
     <module>org.eclipse.jdt.debug</module>