diff --git a/build/.classpath b/build/.classpath
index e0c7abd..b87a844 100644
--- a/build/.classpath
+++ b/build/.classpath
@@ -1,5 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
-	<classpathentry kind="output" path="generated/org.apache.ace.webui.vaadin/bin"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
+	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/cnf/.classpath b/cnf/.classpath
index fb50116..74dc940 100644
--- a/cnf/.classpath
+++ b/cnf/.classpath
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.agent.controller.itest/.classpath b/org.apache.ace.agent.controller.itest/.classpath
index 055bdc3..1e2725d 100644
--- a/org.apache.ace.agent.controller.itest/.classpath
+++ b/org.apache.ace.agent.controller.itest/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" output="bin" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.agent.itest/.classpath b/org.apache.ace.agent.itest/.classpath
index acb46e4..44bd176 100644
--- a/org.apache.ace.agent.itest/.classpath
+++ b/org.apache.ace.agent.itest/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" output="bin" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.agent.itest/bnd.bnd b/org.apache.ace.agent.itest/bnd.bnd
index 32bbdb0..88df3f5 100644
--- a/org.apache.ace.agent.itest/bnd.bnd
+++ b/org.apache.ace.agent.itest/bnd.bnd
@@ -1,4 +1,3 @@
-Test-Cases: ${classes;CONCRETE;EXTENDS;junit.framework.TestCase}
 -runbundles: \
 	org.apache.ace.agent;version=latest,\
 	org.apache.ace.test;version=latest,\
@@ -9,19 +8,16 @@
 	org.apache.felix.log,\
 	biz.aQute.bnd,\
 	osgi.cmpn
-Private-Package: \
-	org.apache.ace.agent.itest,\
-	aQute.*
--runee: JavaSE-1.6
+-runee: JavaSE-1.7
 -runvm: -ea
 -runfw: org.apache.felix.framework;version='[4,5)'
--buildpath: osgi.core;version='[4.2,5)',\
+-buildpath: \
+	osgi.core;version='[4.2,5)',\
 	org.apache.ace.agent;version=latest,\
 	org.apache.ace.builder;version=latest,\
 	org.apache.ace.test;version=latest,\
 	org.apache.felix.dependencymanager,\
 	org.apache.felix.http.jetty,\
-	biz.aQute.bnd,\
 	junit.osgi,\
 	org.mockito.mockito-all	
 -runsystempackages: sun.reflect
@@ -30,12 +26,16 @@
 	org.apache.felix.log.storeDebug=true,\
 	org.apache.felix.log.maxSize=1000,\
 	org.osgi.framework.bootdelegation="com.yourkit.*,com.sun.*,sun.*,apple.*,com.apple.*"
-Import-Package: org.apache.ace.agent,\
-	!org.osgi.service.component.annotations,\
-	!org.apache.tools.ant.*,\
-	!aQute.*,\
+
+Private-Package: \
+	org.apache.ace.agent.itest
+Import-Package: \
+	org.apache.ace.agent,\
 	*
 Bundle-Version: 1.0.0
 Bundle-Name: Apache ACE Agent itest
 Bundle-Description: Integration test bundle for the Apache ACE Agent
+
+Test-Cases: ${classes;CONCRETE;EXTENDS;junit.framework.TestCase}
+
 -baseline:
diff --git a/org.apache.ace.agent.itest/src/org/apache/ace/agent/itest/BaseAgentTest.java b/org.apache.ace.agent.itest/src/org/apache/ace/agent/itest/BaseAgentTest.java
index 17cbdb0..5d069c4 100644
--- a/org.apache.ace.agent.itest/src/org/apache/ace/agent/itest/BaseAgentTest.java
+++ b/org.apache.ace.agent.itest/src/org/apache/ace/agent/itest/BaseAgentTest.java
@@ -31,19 +31,17 @@
 import org.apache.ace.agent.ConfigurationHandler;
 import org.apache.ace.builder.DeploymentPackageBuilder;
 import org.apache.ace.it.IntegrationTestBase;
+import org.apache.ace.test.utils.FileUtils;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.Version;
 
-import aQute.bnd.osgi.Builder;
-import aQute.bnd.osgi.Jar;
-
 public abstract class BaseAgentTest extends IntegrationTestBase {
 
     protected static class TestBundle {
         private final File m_file;
 
-        public TestBundle(String name, Version version, String... headers) throws Exception {
-            m_file = createBundle(name, version, headers);
+        public TestBundle(String bsn, Version version, String... headers) throws Exception {
+            m_file = FileUtils.createEmptyBundle(bsn, version, headers);
         }
 
         public File getFile() {
@@ -80,31 +78,6 @@
         }
     }
 
-    protected static File createBundle(String bsn, Version version, String... headers) throws Exception {
-        Builder b = new Builder();
-
-        try {
-            b.setProperty("Bundle-SymbolicName", bsn);
-            b.setProperty("Bundle-Version", version.toString());
-            for (int i = 0; i < headers.length; i += 2) {
-                b.setProperty(headers[i], headers[i + 1]);
-            }
-            b.setProperty("Include-Resource", "bnd.bnd"); // prevent empty jar bug
-
-            Jar jar = b.build();
-            jar.getManifest(); // Not sure whether this is needed...
-
-            File file = File.createTempFile("testbundle", ".jar");
-            file.deleteOnExit();
-
-            jar.write(file);
-            return file;
-        }
-        finally {
-            b.close();
-        }
-    }
-
     protected static File createPackage(String name, Version version, File... bundles) throws Exception {
         DeploymentPackageBuilder builder = DeploymentPackageBuilder.createDeploymentPackage(name, version.toString());
 
diff --git a/org.apache.ace.agent.launcher/.classpath b/org.apache.ace.agent.launcher/.classpath
index 3345ca0..899b1ca 100644
--- a/org.apache.ace.agent.launcher/.classpath
+++ b/org.apache.ace.agent.launcher/.classpath
@@ -3,7 +3,7 @@
 	<classpathentry kind="src" output="bin" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.agent.update.itest/.classpath b/org.apache.ace.agent.update.itest/.classpath
index 055bdc3..1e2725d 100644
--- a/org.apache.ace.agent.update.itest/.classpath
+++ b/org.apache.ace.agent.update.itest/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" output="bin" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.agent/.classpath b/org.apache.ace.agent/.classpath
index d899a85..c871f1a 100644
--- a/org.apache.ace.agent/.classpath
+++ b/org.apache.ace.agent/.classpath
@@ -3,7 +3,7 @@
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.ant.tasks/.classpath b/org.apache.ace.ant.tasks/.classpath
index 0f71e98..922e749 100644
--- a/org.apache.ace.ant.tasks/.classpath
+++ b/org.apache.ace.ant.tasks/.classpath
@@ -1,7 +1,8 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="src" output="bin_test" path="test"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.ant.tasks/bnd.bnd b/org.apache.ace.ant.tasks/bnd.bnd
index ae956c2..c89f62c 100644
--- a/org.apache.ace.ant.tasks/bnd.bnd
+++ b/org.apache.ace.ant.tasks/bnd.bnd
@@ -1,4 +1,5 @@
--buildpath: ant;version=latest,\
+-buildpath: \
+	ant;version=latest,\
 	org.apache.ace.builder;version=latest
 Export-Package: org.apache.ace.ant.deploymentpackage
 Bundle-Version: 1.0.1
diff --git a/org.apache.ace.authentication.itest/.classpath b/org.apache.ace.authentication.itest/.classpath
index b058029..922e749 100644
--- a/org.apache.ace.authentication.itest/.classpath
+++ b/org.apache.ace.authentication.itest/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.authentication/.classpath b/org.apache.ace.authentication/.classpath
index 412b680..a0bbcd3 100644
--- a/org.apache.ace.authentication/.classpath
+++ b/org.apache.ace.authentication/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.bnd/.classpath b/org.apache.ace.bnd/.classpath
index 055bdc3..1e2725d 100644
--- a/org.apache.ace.bnd/.classpath
+++ b/org.apache.ace.bnd/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" output="bin" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.builder/.classpath b/org.apache.ace.builder/.classpath
index 412b680..a0bbcd3 100644
--- a/org.apache.ace.builder/.classpath
+++ b/org.apache.ace.builder/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.client.automation/.classpath b/org.apache.ace.client.automation/.classpath
index 0f71e98..232a035 100644
--- a/org.apache.ace.client.automation/.classpath
+++ b/org.apache.ace.client.automation/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.client.repository.itest/.classpath b/org.apache.ace.client.repository.itest/.classpath
index b058029..922e749 100644
--- a/org.apache.ace.client.repository.itest/.classpath
+++ b/org.apache.ace.client.repository.itest/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.client.repository/.classpath b/org.apache.ace.client.repository/.classpath
index 412b680..a0bbcd3 100644
--- a/org.apache.ace.client.repository/.classpath
+++ b/org.apache.ace.client.repository/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.client.rest.itest/.classpath b/org.apache.ace.client.rest.itest/.classpath
index b058029..922e749 100644
--- a/org.apache.ace.client.rest.itest/.classpath
+++ b/org.apache.ace.client.rest.itest/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.client.rest.itest/bnd.bnd b/org.apache.ace.client.rest.itest/bnd.bnd
index 4d6c398..a0519e6 100644
--- a/org.apache.ace.client.rest.itest/bnd.bnd
+++ b/org.apache.ace.client.rest.itest/bnd.bnd
@@ -1,9 +1,7 @@
-Test-Cases: ${classes;CONCRETE;EXTENDS;org.apache.ace.it.IntegrationTestBase}
 -buildpath: \
 	osgi.core,\
 	osgi.cmpn,\
 	junit.osgi,\
-	biz.aQute.bnd,\
 	javax.servlet,\
 	com.sun.jersey.client,\
 	com.sun.jersey.core,\
@@ -27,9 +25,11 @@
 	org.apache.ace.client.repository.helper.bundle;version=latest,\
 	org.apache.ace.client.repository.helper.configuration;version=latest,\
 	org.apache.ace.feedback.common;version=latest
--runfw: org.apache.felix.framework;version='[4,5)'
+-runee: JavaSE-1.7
 -runvm: -ea
--runbundles: osgi.cmpn,\
+-runfw: org.apache.felix.framework;version='[4,5)'
+-runbundles: \
+	osgi.cmpn,\
 	com.sun.jersey.client,\
 	com.sun.jersey.core,\
 	org.apache.felix.dependencymanager,\
@@ -76,22 +76,21 @@
 	org.apache.ace.client.rest;version=latest,\
 	org.apache.ace.client.workspace;version=latest,\
 	org.apache.ace.feedback.common;version=latest
--runproperties: org.apache.felix.log.storeDebug=true,\
+-runproperties: \
+	org.apache.felix.log.storeDebug=true,\
 	org.apache.felix.eventadmin.Timeout=0,\
 	org.apache.felix.log.maxSize=1000
+
 Private-Package: \
 	org.apache.ace.client.rest.itest,\
-	com.google.gson*,\
-	aQute.*,\
-	org.osgi.service.bindex
+	com.google.gson*
 Import-Package: \
-	!aQute.bnd.*,\
-	!org.apache.tools.ant.*,\
-	!org.eclipse.*,\
 	*
 Bundle-Version: 1.0.0
 Bundle-Name: Apache ACE Client REST itest
 Bundle-Description: Integration test bundle for Apache ACE Client REST
 Bundle-Category: itest
 
+Test-Cases: ${classes;CONCRETE;EXTENDS;org.apache.ace.it.IntegrationTestBase}
+
 -baseline:
\ No newline at end of file
diff --git a/org.apache.ace.client.rest.itest/src/org/apache/ace/client/rest/itest/ClientRestUtils.java b/org.apache.ace.client.rest.itest/src/org/apache/ace/client/rest/itest/ClientRestUtils.java
index 47cb31c..e2c388c 100644
--- a/org.apache.ace.client.rest.itest/src/org/apache/ace/client/rest/itest/ClientRestUtils.java
+++ b/org.apache.ace.client.rest.itest/src/org/apache/ace/client/rest/itest/ClientRestUtils.java
@@ -28,9 +28,6 @@
 
 import org.apache.ace.test.utils.FileUtils;
 
-import aQute.bnd.osgi.Builder;
-import aQute.bnd.osgi.Jar;
-
 import com.google.gson.Gson;
 import com.sun.jersey.api.client.Client;
 import com.sun.jersey.api.client.UniformInterfaceException;
@@ -164,26 +161,6 @@
         return createEntity(c, work, "target", "{attributes: {id: \"" + name + "\", autoapprove: \"true\"}, tags: {" + result.toString() + "}}");
     }
 
-    public static File createTmpBundleOnDisk(String bsn, String v, String... headers) throws Exception {
-        File file = File.createTempFile("bundle", ".jar");
-        file.deleteOnExit();
-        Builder b = new Builder();
-        try {
-            b.setProperty("Bundle-SymbolicName", bsn);
-            b.setProperty("Bundle-Version", v);
-            for (int i = 0; i < headers.length; i += 2) {
-                b.setProperty(headers[i], headers[i + 1]);
-            }
-            Jar jar = b.build();
-            jar.getManifest(); // Not sure whether this is needed...
-            jar.write(file);
-            return file;
-        }
-        finally {
-            b.close();
-        }
-    }
-
     public static File createTmpConfigOnDisk(String config) throws Exception {
         File file = File.createTempFile("template", ".xml");
         file.deleteOnExit();
diff --git a/org.apache.ace.client.rest.itest/src/org/apache/ace/client/rest/itest/RESTClientTest.java b/org.apache.ace.client.rest.itest/src/org/apache/ace/client/rest/itest/RESTClientTest.java
index 20ba0e0..8d21398 100644
--- a/org.apache.ace.client.rest.itest/src/org/apache/ace/client/rest/itest/RESTClientTest.java
+++ b/org.apache.ace.client.rest.itest/src/org/apache/ace/client/rest/itest/RESTClientTest.java
@@ -28,11 +28,11 @@
 import static org.apache.ace.client.rest.itest.ClientRestUtils.createFeature;
 import static org.apache.ace.client.rest.itest.ClientRestUtils.createResourceProcessor;
 import static org.apache.ace.client.rest.itest.ClientRestUtils.createTarget;
-import static org.apache.ace.client.rest.itest.ClientRestUtils.createTmpBundleOnDisk;
 import static org.apache.ace.client.rest.itest.ClientRestUtils.createTmpConfigOnDisk;
 import static org.apache.ace.client.rest.itest.ClientRestUtils.createWorkspace;
 import static org.apache.ace.client.rest.itest.ClientRestUtils.deleteResources;
 import static org.apache.ace.client.rest.itest.ClientRestUtils.ensureCleanStore;
+import static org.apache.ace.test.utils.FileUtils.createEmptyBundle;
 
 import java.io.File;
 import java.io.IOException;
@@ -47,6 +47,7 @@
 import org.apache.felix.dm.Component;
 import org.osgi.framework.Bundle;
 import org.osgi.framework.BundleContext;
+import org.osgi.framework.Version;
 import org.osgi.service.log.LogEntry;
 import org.osgi.service.log.LogReaderService;
 import org.osgi.service.useradmin.Role;
@@ -60,7 +61,6 @@
 import com.sun.jersey.api.client.WebResource;
 
 public class RESTClientTest extends IntegrationTestBase {
-
     // From: ConfigurationHelper (somehow directly using them here fails)
     public static final String KEY_FILENAME = "filename";
     public static final String MIMETYPE = "application/xml:osgi-autoconf";
@@ -68,6 +68,7 @@
 
     private static final String STOREPATH = "generated/store";
     private static final String HOST = "http://localhost:" + TestConstants.PORT;
+    private static final Version V1_0_0 = new Version(1, 0, 0);
 
     private static boolean m_hasBeenSetup = false;
     private static int m_testRunCount = 0;
@@ -148,8 +149,8 @@
         Gson gson = new Gson();
         try {
             int nr = 20;
-            File b1 = createTmpBundleOnDisk("bar.b1", "1.0.0");
-            File b2 = createTmpBundleOnDisk("bar.b2", "1.0.0");
+            File b1 = createEmptyBundle("bar.b1", V1_0_0);
+            File b2 = createEmptyBundle("bar.b2", V1_0_0);
 
             WebResource w1 = createWorkspace(HOST, client);
             deleteResources(gson, w1);
@@ -192,9 +193,9 @@
         Client client = createClient();
         Gson gson = new Gson();
         try {
-            File b1 = createTmpBundleOnDisk("foo.b1", "1.0.0");
-            File b2 = createTmpBundleOnDisk("foo.b2", "1.0.0");
-            File b3 = createTmpBundleOnDisk("foo.b3", "1.0.0");
+            File b1 = createEmptyBundle("foo.b1", V1_0_0);
+            File b2 = createEmptyBundle("foo.b2", V1_0_0);
+            File b3 = createEmptyBundle("foo.b3", V1_0_0);
 
             WebResource w1 = createWorkspace(HOST, client);
             deleteResources(gson, w1);
@@ -249,7 +250,7 @@
         Client client = createClient();
         Gson gson = new Gson();
         try {
-            File bundle = createTmpBundleOnDisk("rp", "1.0.0", BundleHelper.KEY_RESOURCE_PROCESSOR_PID, PROCESSOR, "DeploymentPackage-Customizer", "true");
+            File bundle = createEmptyBundle("rp", V1_0_0, BundleHelper.KEY_RESOURCE_PROCESSOR_PID, PROCESSOR, "DeploymentPackage-Customizer", "true");
             File config = createTmpConfigOnDisk(
                 "<MetaData xmlns='http://www.osgi.org/xmlns/metatype/v1.0.0'>\n" +
                     "  <OCD name='ocd' id='ocd'>\n" +
diff --git a/org.apache.ace.client.rest/.classpath b/org.apache.ace.client.rest/.classpath
index 074dc3e..e3798ed 100644
--- a/org.apache.ace.client.rest/.classpath
+++ b/org.apache.ace.client.rest/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.client.workspace/.classpath b/org.apache.ace.client.workspace/.classpath
index 2d07c2f..9a46289 100644
--- a/org.apache.ace.client.workspace/.classpath
+++ b/org.apache.ace.client.workspace/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" output="bin" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.configurator.useradmin.itest/.classpath b/org.apache.ace.configurator.useradmin.itest/.classpath
index b058029..922e749 100644
--- a/org.apache.ace.configurator.useradmin.itest/.classpath
+++ b/org.apache.ace.configurator.useradmin.itest/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.configurator/.classpath b/org.apache.ace.configurator/.classpath
index 074dc3e..e3798ed 100644
--- a/org.apache.ace.configurator/.classpath
+++ b/org.apache.ace.configurator/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.connectionfactory/.classpath b/org.apache.ace.connectionfactory/.classpath
index 412b680..a0bbcd3 100644
--- a/org.apache.ace.connectionfactory/.classpath
+++ b/org.apache.ace.connectionfactory/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.consolelogger/.classpath b/org.apache.ace.consolelogger/.classpath
index 0f71e98..232a035 100644
--- a/org.apache.ace.consolelogger/.classpath
+++ b/org.apache.ace.consolelogger/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.deployment.itest/.classpath b/org.apache.ace.deployment.itest/.classpath
index b058029..922e749 100644
--- a/org.apache.ace.deployment.itest/.classpath
+++ b/org.apache.ace.deployment.itest/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.deployment/.classpath b/org.apache.ace.deployment/.classpath
index 412b680..a0bbcd3 100644
--- a/org.apache.ace.deployment/.classpath
+++ b/org.apache.ace.deployment/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.deployment/test/org/apache/ace/deployment/streamgenerator/impl/StreamTest.java b/org.apache.ace.deployment/test/org/apache/ace/deployment/streamgenerator/impl/StreamTest.java
index 5c0b0e4..12dec18 100644
--- a/org.apache.ace.deployment/test/org/apache/ace/deployment/streamgenerator/impl/StreamTest.java
+++ b/org.apache.ace.deployment/test/org/apache/ace/deployment/streamgenerator/impl/StreamTest.java
@@ -40,6 +40,7 @@
 import org.apache.ace.test.constants.TestConstants;
 import org.apache.ace.test.utils.FileUtils;
 import org.apache.ace.test.utils.TestUtils;
+import org.osgi.framework.Version;
 import org.osgi.service.log.LogService;
 import org.osgi.service.useradmin.User;
 import org.testng.annotations.BeforeTest;
@@ -49,6 +50,7 @@
  * Unit tests for the deployment admin stream.
  */
 public class StreamTest {
+    private static final Version V1_0_0 = new Version(1, 0, 0);
     private static final int COPY_BUFFER_SIZE = 4096;
 
     private StreamGeneratorImpl m_generator;
@@ -59,9 +61,9 @@
         m_generator = new StreamGeneratorImpl();
         m_provider = new TestProvider();
 
-        m_provider.addData("A1.jar", "A1", FileUtils.createEmptyBundle(null, "org.apache.ace.test.bundle.A1").toURI().toURL(), "1.0.0", true);
-        m_provider.addData("A2.jar", "A2", FileUtils.createEmptyBundle(null, "org.apache.ace.test.bundle.A2").toURI().toURL(), "1.0.0", false);
-        m_provider.addData("A3.jar", "A3", FileUtils.createEmptyBundle(null, "org.apache.ace.test.bundle.A3").toURI().toURL(), "1.0.0", true);
+        m_provider.addData("A1.jar", "A1", FileUtils.createEmptyBundle("org.apache.ace.test.bundle.A1", V1_0_0).toURI().toURL(), "1.0.0", true);
+        m_provider.addData("A2.jar", "A2", FileUtils.createEmptyBundle("org.apache.ace.test.bundle.A2", V1_0_0).toURI().toURL(), "1.0.0", false);
+        m_provider.addData("A3.jar", "A3", FileUtils.createEmptyBundle("org.apache.ace.test.bundle.A3", V1_0_0).toURI().toURL(), "1.0.0", true);
         TestUtils.configureObject(m_generator, DeploymentProvider.class, m_provider);
         TestUtils.configureObject(m_generator, LogService.class);
         TestUtils.configureObject(m_generator, ConnectionFactory.class, new MockConnectionFactory());
diff --git a/org.apache.ace.discovery/.classpath b/org.apache.ace.discovery/.classpath
index 412b680..a0bbcd3 100644
--- a/org.apache.ace.discovery/.classpath
+++ b/org.apache.ace.discovery/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.feedback.common/.classpath b/org.apache.ace.feedback.common/.classpath
index 5074fa7..9d83336 100644
--- a/org.apache.ace.feedback.common/.classpath
+++ b/org.apache.ace.feedback.common/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" output="bin" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.gogo.servlet/.classpath b/org.apache.ace.gogo.servlet/.classpath
index 055bdc3..1e2725d 100644
--- a/org.apache.ace.gogo.servlet/.classpath
+++ b/org.apache.ace.gogo.servlet/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" output="bin" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.gogo/.classpath b/org.apache.ace.gogo/.classpath
index 055bdc3..1e2725d 100644
--- a/org.apache.ace.gogo/.classpath
+++ b/org.apache.ace.gogo/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" output="bin" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.http.itest/.classpath b/org.apache.ace.http.itest/.classpath
index b058029..922e749 100644
--- a/org.apache.ace.http.itest/.classpath
+++ b/org.apache.ace.http.itest/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.http/.classpath b/org.apache.ace.http/.classpath
index b058029..922e749 100644
--- a/org.apache.ace.http/.classpath
+++ b/org.apache.ace.http/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.identification/.classpath b/org.apache.ace.identification/.classpath
index 074dc3e..e3798ed 100644
--- a/org.apache.ace.identification/.classpath
+++ b/org.apache.ace.identification/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.location.upnp/.classpath b/org.apache.ace.location.upnp/.classpath
index 0f71e98..232a035 100644
--- a/org.apache.ace.location.upnp/.classpath
+++ b/org.apache.ace.location.upnp/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.log.itest/.classpath b/org.apache.ace.log.itest/.classpath
index b058029..922e749 100644
--- a/org.apache.ace.log.itest/.classpath
+++ b/org.apache.ace.log.itest/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.log.server.store.itest/.classpath b/org.apache.ace.log.server.store.itest/.classpath
index 0f71e98..232a035 100644
--- a/org.apache.ace.log.server.store.itest/.classpath
+++ b/org.apache.ace.log.server.store.itest/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.log.server.ui/.classpath b/org.apache.ace.log.server.ui/.classpath
index 0f71e98..232a035 100644
--- a/org.apache.ace.log.server.ui/.classpath
+++ b/org.apache.ace.log.server.ui/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.log/.classpath b/org.apache.ace.log/.classpath
index 074dc3e..e3798ed 100644
--- a/org.apache.ace.log/.classpath
+++ b/org.apache.ace.log/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.nodelauncher/.classpath b/org.apache.ace.nodelauncher/.classpath
index 412b680..a0bbcd3 100644
--- a/org.apache.ace.nodelauncher/.classpath
+++ b/org.apache.ace.nodelauncher/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.obr/.classpath b/org.apache.ace.obr/.classpath
index 412b680..a0bbcd3 100644
--- a/org.apache.ace.obr/.classpath
+++ b/org.apache.ace.obr/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.processlauncher/.classpath b/org.apache.ace.processlauncher/.classpath
index 074dc3e..e3798ed 100644
--- a/org.apache.ace.processlauncher/.classpath
+++ b/org.apache.ace.processlauncher/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.range.api/.classpath b/org.apache.ace.range.api/.classpath
index 074dc3e..e3798ed 100644
--- a/org.apache.ace.range.api/.classpath
+++ b/org.apache.ace.range.api/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.repository.itest/.classpath b/org.apache.ace.repository.itest/.classpath
index 0f71e98..232a035 100644
--- a/org.apache.ace.repository.itest/.classpath
+++ b/org.apache.ace.repository.itest/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.repository/.classpath b/org.apache.ace.repository/.classpath
index 412b680..a0bbcd3 100644
--- a/org.apache.ace.repository/.classpath
+++ b/org.apache.ace.repository/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.resourceprocessor.useradmin/.classpath b/org.apache.ace.resourceprocessor.useradmin/.classpath
index 0f71e98..232a035 100644
--- a/org.apache.ace.resourceprocessor.useradmin/.classpath
+++ b/org.apache.ace.resourceprocessor.useradmin/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.scheduler/.classpath b/org.apache.ace.scheduler/.classpath
index 074dc3e..e3798ed 100644
--- a/org.apache.ace.scheduler/.classpath
+++ b/org.apache.ace.scheduler/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.tageditor/.classpath b/org.apache.ace.tageditor/.classpath
index 0f71e98..232a035 100644
--- a/org.apache.ace.tageditor/.classpath
+++ b/org.apache.ace.tageditor/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.target.mgmt.ui/.classpath b/org.apache.ace.target.mgmt.ui/.classpath
index 0f71e98..232a035 100644
--- a/org.apache.ace.target.mgmt.ui/.classpath
+++ b/org.apache.ace.target.mgmt.ui/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.test/.classpath b/org.apache.ace.test/.classpath
index b058029..922e749 100644
--- a/org.apache.ace.test/.classpath
+++ b/org.apache.ace.test/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.test/src/org/apache/ace/test/utils/FileUtils.java b/org.apache.ace.test/src/org/apache/ace/test/utils/FileUtils.java
index 78146dd..eeddc8b 100644
--- a/org.apache.ace.test/src/org/apache/ace/test/utils/FileUtils.java
+++ b/org.apache.ace.test/src/org/apache/ace/test/utils/FileUtils.java
@@ -23,9 +23,12 @@
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.nio.channels.FileChannel;
+import java.util.jar.Attributes;
 import java.util.jar.JarOutputStream;
 import java.util.jar.Manifest;
 
+import org.osgi.framework.Version;
+
 public class FileUtils {
 
     /**
@@ -43,18 +46,31 @@
     public static File createTempFile(File baseDirectory, String extension) throws IOException {
         File tempFile = File.createTempFile("test", extension, baseDirectory);
         tempFile.delete();
+        tempFile.deleteOnExit();
         return tempFile;
     }
 
-    public static File createEmptyBundle(File baseDirectory, String bsn) throws IOException {
+    public static File createEmptyBundle(String bsn, Version version, String... headers) throws IOException {
+        return createEmptyBundle(null, bsn, version, headers);
+    }
+    
+    public static File createEmptyBundle(File baseDirectory, String bsn, Version version, String... headers) throws IOException {
+        Manifest m = new Manifest();
+        Attributes mainAttrs = m.getMainAttributes();
+        mainAttrs.put(Attributes.Name.MANIFEST_VERSION, "1.0");
+        mainAttrs.putValue("Bundle-ManifestVersion", "2");
+        mainAttrs.putValue("Bundle-SymbolicName", bsn);
+        mainAttrs.putValue("Bundle-Version", version.toString());
+        for (int i = 0; i < headers.length; i += 2) {
+            mainAttrs.putValue(headers[i], headers[i + 1]);
+        }
+
         File result = createTempFile(baseDirectory, ".jar");
 
-        Manifest m = new Manifest();
-        m.getMainAttributes().putValue("Bundle-ManifestVersion", "2");
-        m.getMainAttributes().putValue("Bundle-SymbolicName", bsn);
-        
         try (FileOutputStream fos = new FileOutputStream(result); JarOutputStream jos = new JarOutputStream(fos, m)) {
+            jos.close();
         }
+
         return result;
     }
 
diff --git a/org.apache.ace.useradmin.ui.itest/.classpath b/org.apache.ace.useradmin.ui.itest/.classpath
index 0f71e98..232a035 100644
--- a/org.apache.ace.useradmin.ui.itest/.classpath
+++ b/org.apache.ace.useradmin.ui.itest/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.useradmin.ui/.classpath b/org.apache.ace.useradmin.ui/.classpath
index 0f71e98..232a035 100644
--- a/org.apache.ace.useradmin.ui/.classpath
+++ b/org.apache.ace.useradmin.ui/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.apache.ace.verifier/.classpath b/org.apache.ace.verifier/.classpath
index 412b680..a0bbcd3 100644
--- a/org.apache.ace.verifier/.classpath
+++ b/org.apache.ace.verifier/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="con" path="org.testng.TESTNG_CONTAINER"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.apache.ace.webui.vaadin/.classpath b/org.apache.ace.webui.vaadin/.classpath
index 0f71e98..232a035 100644
--- a/org.apache.ace.webui.vaadin/.classpath
+++ b/org.apache.ace.webui.vaadin/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/run-client/.classpath b/run-client/.classpath
index b058029..922e749 100644
--- a/run-client/.classpath
+++ b/run-client/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/run-develop/.classpath b/run-develop/.classpath
index b058029..922e749 100644
--- a/run-develop/.classpath
+++ b/run-develop/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/run-obr/.classpath b/run-obr/.classpath
index b058029..922e749 100644
--- a/run-obr/.classpath
+++ b/run-obr/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/run-relay/.classpath b/run-relay/.classpath
index 055bdc3..1e2725d 100644
--- a/run-relay/.classpath
+++ b/run-relay/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" output="bin" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/run-server-allinone/.classpath b/run-server-allinone/.classpath
index b058029..922e749 100644
--- a/run-server-allinone/.classpath
+++ b/run-server-allinone/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/run-server/.classpath b/run-server/.classpath
index b058029..922e749 100644
--- a/run-server/.classpath
+++ b/run-server/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/run-target/.classpath b/run-target/.classpath
index b058029..922e749 100644
--- a/run-target/.classpath
+++ b/run-target/.classpath
@@ -2,7 +2,7 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="src" output="bin_test" path="test"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
 	<classpathentry kind="con" path="aQute.bnd.classpath.container"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
