diff --git a/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyDebugPlugin.java b/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyDebugPlugin.java
index b6e8332..671774b 100644
--- a/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyDebugPlugin.java
+++ b/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyDebugPlugin.java
@@ -1,11 +1,10 @@
 /*******************************************************************************
- * Copyright (c) 2005, 2007 IBM Corporation and others.
+ * Copyright (c) 2005, 2016 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
  * http://www.eclipse.org/legal/epl-v10.html
  *
- 
  *******************************************************************************/
 package org.eclipse.dltk.ruby.debug;
 
@@ -29,11 +28,13 @@
 	public RubyDebugPlugin() {
 	}
 
+	@Override
 	public void start(BundleContext context) throws Exception {
 		super.start(context);
 		plugin = this;
 	}
 
+	@Override
 	public void stop(BundleContext context) throws Exception {
 		try {			
 			savePluginPreferences();
diff --git a/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyDebugPreferenceInitializer.java b/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyDebugPreferenceInitializer.java
index 97638b5..cf9ec8d 100644
--- a/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyDebugPreferenceInitializer.java
+++ b/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyDebugPreferenceInitializer.java
@@ -17,6 +17,7 @@
 public class RubyDebugPreferenceInitializer extends
 		AbstractPreferenceInitializer {
 
+	@Override
 	public void initializeDefaultPreferences() {
 		Preferences store = RubyDebugPlugin.getDefault().getPluginPreferences();
 
diff --git a/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyFilenameLinenumberResolver.java b/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyFilenameLinenumberResolver.java
index 93e305a..13fab52 100644
--- a/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyFilenameLinenumberResolver.java
+++ b/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyFilenameLinenumberResolver.java
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2008 xored software, Inc.
+ * Copyright (c) 2008, 2016 xored software, Inc. and others.
  *
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
@@ -27,6 +27,7 @@
 	private static final String SEGMENT = "[ _\\p{L}\\p{N}\\p{M}\\p{S}\\.\\-]+"; //$NON-NLS-1$
 	private static final String LINE_NUMBER = "(\\d+)"; //$NON-NLS-1$
 
+	@Override
 	public String resolveValue(IDynamicVariable variable, String argument) {
 		final StringBuffer sb = new StringBuffer(128);
 		//		sb.append("(?<!(?:\\W|^))"); //$NON-NLS-1$ not word char before
diff --git a/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyHotCodeReplaceProvider.java b/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyHotCodeReplaceProvider.java
index f53c175..a779f8c 100644
--- a/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyHotCodeReplaceProvider.java
+++ b/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyHotCodeReplaceProvider.java
@@ -19,6 +19,7 @@
 	public RubyHotCodeReplaceProvider() {
 	}
 
+	@Override
 	public void performCodeReplace(IScriptDebugTarget target,
 			IResource[] resources) throws DebugException {
 		IScriptThread[] threads = (IScriptThread[]) target.getThreads();
diff --git a/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyTypeFactory.java b/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyTypeFactory.java
index eeaa51f..6bcbb4d 100644
--- a/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyTypeFactory.java
+++ b/plugins/org.eclipse.dltk.ruby.debug/src/org/eclipse/dltk/ruby/debug/RubyTypeFactory.java
@@ -14,6 +14,7 @@
 			"Fixnum", "Float", "Integer", "NilClass", "Numeric", "Range", //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$ //$NON-NLS-5$ //$NON-NLS-6$
 			"Regexp", "Symbol", "TrueClass" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
 
+	@Override
 	public IScriptType buildType(String type) {
 		if (STRING.equalsIgnoreCase(type)) {
 			return new StringScriptType(type);
