diff --git a/bundles/org.eclipse.equinox.device/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.device/META-INF/MANIFEST.MF
index b69aa1a..b4ffdd1 100644
--- a/bundles/org.eclipse.equinox.device/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.equinox.device/META-INF/MANIFEST.MF
@@ -1,6 +1,6 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %bundleName
-Bundle-Version: 1.0.700.qualifier
+Bundle-Version: 1.0.800.qualifier
 Bundle-Activator: org.eclipse.equinox.device.Activator
 Bundle-SymbolicName: org.eclipse.equinox.device
 Bundle-Vendor: %bundleVendor
diff --git a/bundles/org.eclipse.equinox.device/pom.xml b/bundles/org.eclipse.equinox.device/pom.xml
index 172ce5a..a310f07 100644
--- a/bundles/org.eclipse.equinox.device/pom.xml
+++ b/bundles/org.eclipse.equinox.device/pom.xml
@@ -19,6 +19,6 @@
   </parent>
   <groupId>org.eclipse.equinox</groupId>
   <artifactId>org.eclipse.equinox.device</artifactId>
-  <version>1.0.700-SNAPSHOT</version>
+  <version>1.0.800-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/Activator.java b/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/Activator.java
index 97380c6..9cc1736 100644
--- a/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/Activator.java
+++ b/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/Activator.java
@@ -103,7 +103,7 @@
 	/**
 	 * Start the Device Manager.
 	 *
-	 * @param context The device manager's bundle context
+	 * @param contxt The device manager's bundle context
 	 */
 
 	public void start(BundleContext contxt) throws Exception {
@@ -195,7 +195,7 @@
 	/**
 	 * Stop the Device Manager bundle.
 	 *
-	 * @param context The device manager's bundle context
+	 * @param contxt The device manager's bundle context
 	 */
 
 	public void stop(BundleContext contxt) throws Exception {
@@ -296,7 +296,7 @@
 	 * by the ServiceTracker.
 	 *
 	 * @param reference Reference to service that has been removed.
-	 * @param service The service object for the removed service.
+	 * @param object The service object for the removed service.
 	 */
 	public void removedService(ServiceReference reference, Object object) {
 		if (Activator.DEBUG) {
@@ -391,7 +391,7 @@
 			/* This should be included per Section 8.7.7 of the OSGi SP R2
 			 * spec, but it causes the OSGi SP R2 Test Suite to fail.
 			 * We should turn this on for R3.
-
+			
 			 if (driverServiceRegistered)
 			 */
 			//			if (false) {
diff --git a/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DeviceTracker.java b/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DeviceTracker.java
index be2d69e..4bf3b4b 100644
--- a/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DeviceTracker.java
+++ b/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DeviceTracker.java
@@ -49,7 +49,6 @@
 	 *
 	 * @param manager DeviceManager object
 	 * @param device ServiceReference to the Device service.
-	 * @param id ID of DeviceTracker object
 	 */
 	public DeviceTracker(Activator manager, ServiceReference device) {
 		super(manager.context, device, null);
diff --git a/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverLocatorTracker.java b/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverLocatorTracker.java
index 6795f86..f98c219 100644
--- a/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverLocatorTracker.java
+++ b/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverLocatorTracker.java
@@ -104,7 +104,7 @@
 	 * @param reference Reference to service that has been removed.
 	 * @param service The service object for the removed service.
 	 */
-	public void removedService(ServiceReference reference, Object object) {
+	public void removedService(ServiceReference reference, Object service) {
 		if (Activator.DEBUG) {
 			log.log(reference, LogService.LOG_DEBUG, "DriverLocatorTracker removing service"); //$NON-NLS-1$
 		}
@@ -196,7 +196,7 @@
 	/**
 	 * Get an <code>InputStream</code> from which the driver bundle providing a driver with the giving ID can be installed.
 	 *
-	 * @param id the ID of the driver that needs to be installed.
+	 * @param driver_id the ID of the driver that needs to be installed.
 	 * bundle can be installed
 	 */
 
diff --git a/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverSelectorTracker.java b/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverSelectorTracker.java
index 1fd6594..b7f2db1 100644
--- a/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverSelectorTracker.java
+++ b/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverSelectorTracker.java
@@ -89,7 +89,7 @@
 	/**
 	 * Default match selection algorithm from OSGi SPR2 spec.
 	 *
-	 * @param matchArray An array of the successful matches.
+	 * @param matches An array of the successful matches.
 	 * @return ServiceReference to the selected Driver service
 	 */
 	public ServiceReference defaultSelection(Match[] matches) {
diff --git a/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverTracker.java b/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverTracker.java
index 6689e06..0f050be 100644
--- a/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverTracker.java
+++ b/bundles/org.eclipse.equinox.device/src/org/eclipse/equinox/device/DriverTracker.java
@@ -158,7 +158,7 @@
 	 * @param reference Reference to service that has been removed.
 	 * @param service The service object for the removed service.
 	 */
-	public void removedService(ServiceReference reference, Object object) {
+	public void removedService(ServiceReference reference, Object service) {
 		if (Activator.DEBUG) {
 			log.log(reference, LogService.LOG_DEBUG, this + " removing service"); //$NON-NLS-1$
 		}
@@ -203,7 +203,6 @@
 	 * is set, it will use the Bundle's location instead.
 	 *
 	 * @param reference Reference to driver service.
-	 * @param log LogService object.
 	 * @return DRIVER_ID string.
 	 */
 	public String getDriverID(final ServiceReference reference) {
diff --git a/bundles/org.eclipse.equinox.metatype/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.metatype/META-INF/MANIFEST.MF
index 507844c..5fe4a40 100644
--- a/bundles/org.eclipse.equinox.metatype/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.equinox.metatype/META-INF/MANIFEST.MF
@@ -1,6 +1,6 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %bundleName
-Bundle-Version: 1.4.500.qualifier
+Bundle-Version: 1.4.600.qualifier
 Bundle-SymbolicName: org.eclipse.equinox.metatype
 Bundle-Activator: org.eclipse.equinox.metatype.impl.Activator
 Import-Package: javax.xml.parsers,
diff --git a/bundles/org.eclipse.equinox.metatype/pom.xml b/bundles/org.eclipse.equinox.metatype/pom.xml
index e08c973..144d9a0 100644
--- a/bundles/org.eclipse.equinox.metatype/pom.xml
+++ b/bundles/org.eclipse.equinox.metatype/pom.xml
@@ -19,7 +19,7 @@
   </parent>
   <groupId>org.eclipse.equinox</groupId>
   <artifactId>org.eclipse.equinox.metatype</artifactId>
-  <version>1.4.500-SNAPSHOT</version>
+  <version>1.4.600-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
   <build>
     <plugins>
diff --git a/bundles/org.eclipse.equinox.metatype/src/org/eclipse/equinox/metatype/impl/MetaTypeProviderImpl.java b/bundles/org.eclipse.equinox.metatype/src/org/eclipse/equinox/metatype/impl/MetaTypeProviderImpl.java
index d21e346..58dfc50 100644
--- a/bundles/org.eclipse.equinox.metatype/src/org/eclipse/equinox/metatype/impl/MetaTypeProviderImpl.java
+++ b/bundles/org.eclipse.equinox.metatype/src/org/eclipse/equinox/metatype/impl/MetaTypeProviderImpl.java
@@ -13,7 +13,6 @@
  *******************************************************************************/
 package org.eclipse.equinox.metatype.impl;
 
-import java.io.IOException;
 import java.net.URL;
 import java.util.*;
 import javax.xml.parsers.SAXParser;
@@ -85,7 +84,6 @@
 	 * @param parserFactory The bundle object for which the metadata should be
 	 *        read
 	 * @return void
-	 * @throws IOException If there are errors accessing the metadata.xml file
 	 */
 	private boolean readMetaFiles(Bundle bundle, SAXParser saxParser) {
 		Enumeration<URL> entries = bundle.findEntries(MetaTypeService.METATYPE_DOCUMENTS_LOCATION, "*", false); //$NON-NLS-1$
diff --git a/bundles/org.eclipse.equinox.region/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.region/META-INF/MANIFEST.MF
index fcc03bf..71470fb 100644
--- a/bundles/org.eclipse.equinox.region/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.equinox.region/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %Bundle-Name
 Bundle-SymbolicName: org.eclipse.equinox.region
-Bundle-Version: 1.4.200.qualifier
+Bundle-Version: 1.4.300.qualifier
 Bundle-RequiredExecutionEnvironment: JavaSE-1.7
 Fragment-Host: system.bundle
 ExtensionBundle-Activator: org.eclipse.equinox.internal.region.RegionManager
diff --git a/bundles/org.eclipse.equinox.region/pom.xml b/bundles/org.eclipse.equinox.region/pom.xml
index 588ec2f..4ce4522 100644
--- a/bundles/org.eclipse.equinox.region/pom.xml
+++ b/bundles/org.eclipse.equinox.region/pom.xml
@@ -19,6 +19,6 @@
   </parent>
   <groupId>org.eclipse.equinox</groupId>
   <artifactId>org.eclipse.equinox.region</artifactId>
-  <version>1.4.200-SNAPSHOT</version>
+  <version>1.4.300-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/bundles/org.eclipse.equinox.region/src/org/eclipse/equinox/region/RegionDigraph.java b/bundles/org.eclipse.equinox.region/src/org/eclipse/equinox/region/RegionDigraph.java
index fa035f1..79a1934 100644
--- a/bundles/org.eclipse.equinox.region/src/org/eclipse/equinox/region/RegionDigraph.java
+++ b/bundles/org.eclipse.equinox.region/src/org/eclipse/equinox/region/RegionDigraph.java
@@ -267,7 +267,6 @@
 	 * Gets the default {@link Region}, where all bundles installed via {@link BundleContext} are assigned.
 	 * If the default {@link Region} isn't set newly installed bundles are assigned to their installer's region.
 	 * 
-	 * @param defaultRegion the region where all bundles installed via {@link BundleContext} will be assigned to
 	 * @return The default region to assign to or <b>null</b> if it isn't set
 	 */
 	Region getDefaultRegion();
diff --git a/bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/SlashEncodeTest.java b/bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/SlashEncodeTest.java
index fde01ab..b043036 100644
--- a/bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/SlashEncodeTest.java
+++ b/bundles/org.eclipse.equinox.security.tests/src/org/eclipse/equinox/internal/security/tests/storage/SlashEncodeTest.java
@@ -97,7 +97,6 @@
 	 * Tests preferences node name using slash encoding
 	 * @throws IOException 
 	 * @throws BackingStoreException 
-	 * @throws  
 	 */
 	@Test
 	public void testPreferencesWithSlashes() throws IOException, StorageException {
diff --git a/bundles/org.eclipse.equinox.transforms.hook/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.transforms.hook/META-INF/MANIFEST.MF
index 0cefabe..5bba813 100644
--- a/bundles/org.eclipse.equinox.transforms.hook/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.equinox.transforms.hook/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %bundleName
 Bundle-Vendor: %providerName
 Bundle-SymbolicName: org.eclipse.equinox.transforms.hook
-Bundle-Version: 1.2.200.qualifier
+Bundle-Version: 1.2.300.qualifier
 Fragment-Host: org.eclipse.osgi;bundle-version="[3.10.0,4.0.0)"
 Bundle-RequiredExecutionEnvironment: JavaSE-1.7
 Bundle-Localization: transformsHook
diff --git a/bundles/org.eclipse.equinox.transforms.hook/pom.xml b/bundles/org.eclipse.equinox.transforms.hook/pom.xml
index 892bde6..23bf322 100644
--- a/bundles/org.eclipse.equinox.transforms.hook/pom.xml
+++ b/bundles/org.eclipse.equinox.transforms.hook/pom.xml
@@ -19,6 +19,6 @@
   </parent>
   <groupId>org.eclipse.equinox</groupId>
   <artifactId>org.eclipse.equinox.transforms.hook</artifactId>
-  <version>1.2.200-SNAPSHOT</version>
+  <version>1.2.300-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/TransformerHook.java b/bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/TransformerHook.java
index f70e638..413e6e1 100644
--- a/bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/TransformerHook.java
+++ b/bundles/org.eclipse.equinox.transforms.hook/src/org/eclipse/equinox/internal/transforms/TransformerHook.java
@@ -14,7 +14,6 @@
 
 package org.eclipse.equinox.internal.transforms;
 
-import java.io.IOException;
 import org.eclipse.osgi.internal.framework.EquinoxContainer;
 import org.eclipse.osgi.internal.hookregistry.*;
 import org.eclipse.osgi.internal.log.EquinoxLogServices;
@@ -31,9 +30,6 @@
 	private volatile TransformInstanceListData templates;
 	private EquinoxLogServices logServices;
 
-	/**
-	 * @throws IOException  
-	 */
 	public BundleFileWrapper wrapBundleFile(BundleFile bundleFile, Generation generation, boolean base) {
 		if (transformers == null || templates == null)
 			return null;
diff --git a/bundles/org.eclipse.equinox.useradmin/META-INF/MANIFEST.MF b/bundles/org.eclipse.equinox.useradmin/META-INF/MANIFEST.MF
index ce2e469..aa61ded 100644
--- a/bundles/org.eclipse.equinox.useradmin/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.equinox.useradmin/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Vendor: %bundleVendor
-Bundle-Version: 1.1.600.qualifier
+Bundle-Version: 1.1.700.qualifier
 Bundle-Activator: org.eclipse.equinox.internal.useradmin.Activator
 Bundle-SymbolicName: org.eclipse.equinox.useradmin
 Import-Service: org.osgi.service.log.LogService
diff --git a/bundles/org.eclipse.equinox.useradmin/pom.xml b/bundles/org.eclipse.equinox.useradmin/pom.xml
index a55bee6..208876d 100644
--- a/bundles/org.eclipse.equinox.useradmin/pom.xml
+++ b/bundles/org.eclipse.equinox.useradmin/pom.xml
@@ -19,6 +19,6 @@
   </parent>
   <groupId>org.eclipse.equinox</groupId>
   <artifactId>org.eclipse.equinox.useradmin</artifactId>
-  <version>1.1.600-SNAPSHOT</version>
+  <version>1.1.700-SNAPSHOT</version>
   <packaging>eclipse-plugin</packaging>
 </project>
diff --git a/bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/Authorization.java b/bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/Authorization.java
index 7f3f83a..adcdb94 100644
--- a/bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/Authorization.java
+++ b/bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/Authorization.java
@@ -91,13 +91,13 @@
 	 * Checks if the role with the specified name is implied by this 
 	 * Authorization context.
 	 * <p>
-
+	
 	 * Bundles must define globally unique role names that are associated with
 	 * the privilege of accessing restricted resources or operations.
 	 * System administrators will grant users access to these resources, by
 	 * creating a {@link Group} for each role and adding {@link User}s to it.
 	 *
-	 * @param name The name of the role to check for.
+	 * @param name_ The name of the role to check for.
 	 *
 	 * @return <code>true</code> if this Authorization context implies the
 	 * specified role, otherwise <code>false</code>.
diff --git a/bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/UserAdmin.java b/bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/UserAdmin.java
index 751cbbf..4958350 100644
--- a/bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/UserAdmin.java
+++ b/bundles/org.eclipse.equinox.useradmin/src/org/eclipse/equinox/internal/useradmin/UserAdmin.java
@@ -221,7 +221,7 @@
 	 * description of the filter syntax. If a <code>null</code> filter is
 	 * specified, all roles managed by this UserAdmin are returned.
 	 *
-	 * @param filter The filter criteria to match.
+	 * @param filterString The filter criteria to match.
 	 *
 	 * @return The roles managed by this UserAdmin whose properties
 	 * match the specified filter criteria, or all roles if a
