diff --git a/bundles/org.eclipse.e4.languages.javascript.debug.jsdi/.classpath b/bundles/org.eclipse.e4.languages.javascript.debug.jsdi/.classpath
index ad32c83..d5735f0 100644
--- a/bundles/org.eclipse.e4.languages.javascript.debug.jsdi/.classpath
+++ b/bundles/org.eclipse.e4.languages.javascript.debug.jsdi/.classpath
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/OSGi%Minimum-1.2"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/bundles/org.eclipse.e4.languages.javascript.debug.model/src/org/eclipse/e4/languages/javascript/debug/model/JSDIValue.java b/bundles/org.eclipse.e4.languages.javascript.debug.model/src/org/eclipse/e4/languages/javascript/debug/model/JSDIValue.java
index 12028ce..b8d7446 100644
--- a/bundles/org.eclipse.e4.languages.javascript.debug.model/src/org/eclipse/e4/languages/javascript/debug/model/JSDIValue.java
+++ b/bundles/org.eclipse.e4.languages.javascript.debug.model/src/org/eclipse/e4/languages/javascript/debug/model/JSDIValue.java
@@ -109,7 +109,7 @@
 		StringBuffer buffer = new StringBuffer();
 		if (this.value instanceof PropertiesReference) {
 			// TODO resolve id - needs work for lifecycle
-			buffer.append(this.value.toString()).append(JSONConstants.SPACE).append("(id=unknown)");
+			buffer.append(this.value.toString()).append(JSONConstants.SPACE).append("(id=unknown)"); //$NON-NLS-1$
 			return buffer.toString();
 		}
 		return this.value.toString();
diff --git a/bundles/org.eclipse.e4.languages.javascript.debug.rhino/.classpath b/bundles/org.eclipse.e4.languages.javascript.debug.rhino/.classpath
index ad32c83..d5735f0 100644
--- a/bundles/org.eclipse.e4.languages.javascript.debug.rhino/.classpath
+++ b/bundles/org.eclipse.e4.languages.javascript.debug.rhino/.classpath
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/OSGi%Minimum-1.2"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/bundles/org.eclipse.e4.languages.javascript.debug.rhino/src/org/eclipse/e4/languages/javascript/debug/rhino/DebugFrameImpl.java b/bundles/org.eclipse.e4.languages.javascript.debug.rhino/src/org/eclipse/e4/languages/javascript/debug/rhino/DebugFrameImpl.java
index 0b793ff..d9437eb 100644
--- a/bundles/org.eclipse.e4.languages.javascript.debug.rhino/src/org/eclipse/e4/languages/javascript/debug/rhino/DebugFrameImpl.java
+++ b/bundles/org.eclipse.e4.languages.javascript.debug.rhino/src/org/eclipse/e4/languages/javascript/debug/rhino/DebugFrameImpl.java
@@ -160,7 +160,7 @@
 		RhinoDebugger rhinoDebugger = (RhinoDebugger) context.getDebugger();
 		rhinoDebugger.disableThread();
 
-		Context evalContext = context.getFactory().enter();
+		Context evalContext = context.getFactory().enterContext();
 		Debugger debugger = evalContext.getDebugger();
 		Object debuggerContextData = evalContext.getDebuggerContextData();
 		evalContext.setDebugger(null, null);
@@ -185,7 +185,7 @@
 		RhinoDebugger rhinoDebugger = (RhinoDebugger) context.getDebugger();
 		rhinoDebugger.disableThread();
 
-		Context evalContext = context.getFactory().enter();
+		Context evalContext = context.getFactory().enterContext();
 		Debugger debugger = evalContext.getDebugger();
 		Object debuggerContextData = evalContext.getDebuggerContextData();
 		evalContext.setDebugger(null, null);
@@ -212,7 +212,7 @@
 		RhinoDebugger rhinoDebugger = (RhinoDebugger) context.getDebugger();
 		rhinoDebugger.disableThread();
 
-		Context lookupContext = context.getFactory().enter();
+		Context lookupContext = context.getFactory().enterContext();
 		Debugger debugger = lookupContext.getDebugger();
 		Object debuggerContextData = lookupContext.getDebuggerContextData();
 		lookupContext.setDebugger(null, null);
@@ -341,6 +341,10 @@
 			result.put(JSONConstants.PROPERTIES, createProperties(scriptable));
 	}
 
+	/**
+	 * @param javaObject
+	 * @return
+	 */
 	private Object createJavaObjectProperties(NativeJavaObject javaObject) {
 		ArrayList properties = new ArrayList();
 		// TODO: The problem here is Rhino treats getters and setters differently and in some cases will call these methods
diff --git a/bundles/org.eclipse.e4.languages.javascript.debug.ui/src/org/eclipse/e4/languages/internal/javascript/debug/ui/JSDIModelPresentation.java b/bundles/org.eclipse.e4.languages.javascript.debug.ui/src/org/eclipse/e4/languages/internal/javascript/debug/ui/JSDIModelPresentation.java
index 708151f..fa151c2 100644
--- a/bundles/org.eclipse.e4.languages.javascript.debug.ui/src/org/eclipse/e4/languages/internal/javascript/debug/ui/JSDIModelPresentation.java
+++ b/bundles/org.eclipse.e4.languages.javascript.debug.ui/src/org/eclipse/e4/languages/internal/javascript/debug/ui/JSDIModelPresentation.java
@@ -35,7 +35,6 @@
 import org.eclipse.e4.languages.javascript.debug.model.JSDIValue;
 import org.eclipse.e4.languages.javascript.debug.model.JSDIVariable;
 import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.osgi.util.NLS;
 import org.eclipse.swt.graphics.Image;
 import org.eclipse.ui.IEditorDescriptor;
 import org.eclipse.ui.IEditorInput;
@@ -202,11 +201,11 @@
 				return getImageFromType(property.getReferenceTypeName());
 			}
 			if(element instanceof JSDILineBreakpoint) {
-				JSDILineBreakpoint breakpoint = (JSDILineBreakpoint) element;
+				//JSDILineBreakpoint breakpoint = (JSDILineBreakpoint) element;
 				//TODO
 			}
 			if(element instanceof JSDIFunctionBreakpoint) {
-				JSDIFunctionBreakpoint breakpoint = (JSDIFunctionBreakpoint) element;
+				//JSDIFunctionBreakpoint breakpoint = (JSDIFunctionBreakpoint) element;
 				//TODO
 			}
 		}
diff --git a/bundles/org.eclipse.e4.languages.javascript.debug.ui/src/org/eclipse/e4/languages/internal/javascript/debug/ui/breakpoints/ToggleBreakpointAdapter.java b/bundles/org.eclipse.e4.languages.javascript.debug.ui/src/org/eclipse/e4/languages/internal/javascript/debug/ui/breakpoints/ToggleBreakpointAdapter.java
index f5316f0..7c0b00d 100644
--- a/bundles/org.eclipse.e4.languages.javascript.debug.ui/src/org/eclipse/e4/languages/internal/javascript/debug/ui/breakpoints/ToggleBreakpointAdapter.java
+++ b/bundles/org.eclipse.e4.languages.javascript.debug.ui/src/org/eclipse/e4/languages/internal/javascript/debug/ui/breakpoints/ToggleBreakpointAdapter.java
@@ -16,7 +16,6 @@
 import org.eclipse.core.resources.IResource;
 import org.eclipse.core.resources.ResourcesPlugin;
 import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPath;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.IStatus;
 import org.eclipse.core.runtime.Status;
diff --git a/tests/org.eclipse.e4.languages.javascript.debug.test/src/org/eclipse/e4/languages/javascript/debug/connect/test/RequestTest.java b/tests/org.eclipse.e4.languages.javascript.debug.test/src/org/eclipse/e4/languages/javascript/debug/connect/test/RequestTest.java
index f777896..081ed20 100644
--- a/tests/org.eclipse.e4.languages.javascript.debug.test/src/org/eclipse/e4/languages/javascript/debug/connect/test/RequestTest.java
+++ b/tests/org.eclipse.e4.languages.javascript.debug.test/src/org/eclipse/e4/languages/javascript/debug/connect/test/RequestTest.java
@@ -15,7 +15,6 @@
 	protected TestEventHandler eventHandler;
 	protected JSFrameworkImpl framework;
 	protected ContextFactory contextFactory;
-	private boolean done = false;
 
 	protected void setUp() throws Exception {
 		TransportService pipedTransport = new PipedTransportService();
diff --git a/tests/org.eclipse.e4.languages.javascript.debug.test/src/org/eclipse/e4/languages/javascript/debug/connect/test/RhinoDebuggerTest.java b/tests/org.eclipse.e4.languages.javascript.debug.test/src/org/eclipse/e4/languages/javascript/debug/connect/test/RhinoDebuggerTest.java
index 2ab24b6..342292b 100644
--- a/tests/org.eclipse.e4.languages.javascript.debug.test/src/org/eclipse/e4/languages/javascript/debug/connect/test/RhinoDebuggerTest.java
+++ b/tests/org.eclipse.e4.languages.javascript.debug.test/src/org/eclipse/e4/languages/javascript/debug/connect/test/RhinoDebuggerTest.java
@@ -59,7 +59,7 @@
 		assertNotSame(Scriptable.NOT_FOUND, obj);
 		assertTrue(obj instanceof Callable);
 		Callable test = (Callable) obj;
-		contextFactory.enter();
+		contextFactory.enterContext();
 		try {
 			Object result = test.call(Context.getCurrentContext(), scope, scope, new Object[0]);
 			Object javaResult = Context.jsToJava(result, String.class);
