diff --git a/bundlerepository/pom.xml b/bundlerepository/pom.xml
index 6ac4e85..90aedc1 100644
--- a/bundlerepository/pom.xml
+++ b/bundlerepository/pom.xml
@@ -23,21 +23,20 @@
     <version>0.8.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
-  <packaging>osgi-bundle</packaging>
-  <name>Apache Felix Bundle Repository Service</name>
+  <packaging>bundle</packaging>
+  <name>Apache Felix Bundle Repository</name>
+  <description>Bundle repository service.</description>
   <artifactId>org.apache.felix.bundlerepository</artifactId>
   <dependencies>
     <dependency>
       <groupId>${pom.groupId}</groupId>
       <artifactId>org.osgi.core</artifactId>
       <version>${pom.version}</version>
-      <scope>provided</scope>
     </dependency>
     <dependency>
       <groupId>${pom.groupId}</groupId>
       <artifactId>org.apache.felix.shell</artifactId>
       <version>${pom.version}</version>
-      <scope>provided</scope>
     </dependency>
     <dependency>
       <groupId>kxml2</groupId>
@@ -48,24 +47,22 @@
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.felix.plugins</groupId>
-        <artifactId>maven-osgi-plugin</artifactId>
-        <version>${pom.version}</version>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
         <extensions>true</extensions>
         <configuration>
-          <ignorePackage>javax.xml.parsers,org.xml.sax</ignorePackage>
-          <osgiManifest>
-            <bundleName>BundleRepository</bundleName>
-            <bundleActivator>auto-detect</bundleActivator>
-            <bundleDescription>Bundle repository service.</bundleDescription>
-            <bundleDocUrl>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/</bundleDocUrl>
-            <bundleUrl>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/${pom.artifactId}-${pom.version}.jar</bundleUrl>
-            <bundleSource>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/${pom.artifactId}-${pom.version}-src.jar</bundleSource>
-            <bundleSymbolicName>${pom.artifactId}</bundleSymbolicName>
-            <dynamicImportPackage>org.apache.felix.shell</dynamicImportPackage>
-            <exportPackage>org.osgi.service.obr</exportPackage>
-            <exportService>org.osgi.service.obr.RepositoryAdmin</exportService>
-          </osgiManifest>
+          <instructions>
+            <Export-Package>org.osgi.service.obr</Export-Package>
+            <Private-Package>org.kxml2.*,org.xmlpull.*,org.apache.felix.bundlerepository.*</Private-Package>
+            <Import-Package>!javax.xml.parsers,!org.xml.sax,*</Import-Package>
+            <Dynamic-ImportPackage>org.apache.felix.shell</Dynamic-ImportPackage>
+            <Bundle-Activator>${pom.artifactId}.Activator</Bundle-Activator>
+            <Bundle-DocUrl>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/</Bundle-DocUrl>
+            <Bundle-Url>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/${pom.artifactId}-${pom.version}.jar</Bundle-Url>
+            <Bundle-Source>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/${pom.artifactId}-${pom.version}-src.jar</Bundle-Source>
+            <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
+            <Export-Service>org.osgi.service.obr.RepositoryAdmin</Export-Service>
+          </instructions>
         </configuration>
       </plugin>
     </plugins>
diff --git a/framework/pom.xml b/framework/pom.xml
index 4a21c7b..f5911cb 100644
--- a/framework/pom.xml
+++ b/framework/pom.xml
@@ -23,27 +23,33 @@
     <version>0.8.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
-  <packaging>jar</packaging>
+  <packaging>bundle</packaging>
   <name>Apache Felix OSGi Framework Implementation</name>
   <artifactId>org.apache.felix.framework</artifactId>
   <dependencies>
     <dependency>
       <groupId>${pom.groupId}</groupId>
-      <artifactId>org.apache.felix.shell</artifactId>
-      <version>${pom.version}</version>
-    </dependency>
-    <dependency>
-      <groupId>${pom.groupId}</groupId>
       <artifactId>org.osgi.core</artifactId>
       <version>${pom.version}</version>
     </dependency>
   </dependencies>
   <build>
-    <resources>
-      <resource>
-        <directory>src/main/resources</directory>
-        <filtering>true</filtering>
-      </resource>
-    </resources>
+    <plugins>
+      <plugin>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <extensions>true</extensions>
+        <configuration>
+          <instructions>
+            <Bundle-Name>Apache Felix Framework</Bundle-Name>
+            <Bundle-Description>OSGi R4 framework implementation.</Bundle-Description>
+            <Export-Package>org.osgi.framework,org.osgi.service.packageadmin,org.osgi.service.url,org.osgi.service.startlevel</Export-Package>
+            <Private-Package>org.apache.felix.*</Private-Package>
+            <Import-Package>!*</Import-Package>
+            <Include-Resource>{src/main/resources/},org/osgi/framework/=target/classes/org/osgi/framework/</Include-Resource> 
+          </instructions>
+        </configuration>
+      </plugin>
+    </plugins>
   </build>  
 </project>
diff --git a/javax.servlet/pom.xml b/javax.servlet/pom.xml
index c63fe61..dbfad1b 100644
--- a/javax.servlet/pom.xml
+++ b/javax.servlet/pom.xml
@@ -6,26 +6,22 @@
   </parent>
   <modelVersion>4.0.0</modelVersion>
   <name>Servlet 2.1 API</name>
+  <description>Servlet 2.1 API</description>
   <artifactId>javax.servlet</artifactId>
-  <packaging>osgi-bundle</packaging>
+  <packaging>bundle</packaging>
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.felix.plugins</groupId>
-        <artifactId>maven-osgi-plugin</artifactId>
-        <version>${pom.version}</version>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
         <extensions>true</extensions>
         <configuration>
-          <osgiManifest>
-            <bundleName>servlet</bundleName>
-            <bundleVendor>Apache Software Foundation</bundleVendor>
-            <bundleVersion>2.1</bundleVersion>
-            <bundleSymbolicName>javax.servlet</bundleSymbolicName>
-            <bundleDescription>Servlet 2.1 API</bundleDescription>
-            <bundleCopyright>Copyright 1999,2005 The Apache Software Foundation</bundleCopyright>
-            <bundleCategory>servlet</bundleCategory>
-            <exportPackage>javax.servlet;specification-version="2.1",javax.servlet.http;specification-version="2.1"</exportPackage>
-          </osgiManifest>
+          <instructions>
+            <Bundle-Copyright>Copyright 1999,2005 The Apache Software Foundation</Bundle-Copyright>
+            <Bundle-Category>servlet</Bundle-Category>
+            <Export-Package>javax.servlet;specification-version="2.1",javax.servlet.http;specification-version="2.1"</Export-Package>
+            <Import-Package>!javax.servlet.*,*</Import-Package>
+          </instructions>
         </configuration>
       </plugin>
     </plugins>
diff --git a/log/pom.xml b/log/pom.xml
index f858a68..510a567 100644
--- a/log/pom.xml
+++ b/log/pom.xml
@@ -5,48 +5,36 @@
     <version>0.8.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
-  <packaging>osgi-bundle</packaging>
+  <packaging>bundle</packaging>
   <name>Apache Felix Log Service</name>
+  <description>
+    This bundle provides an implementation of the OSGi R4 Log service.
+  </description>
   <artifactId>org.apache.felix.log</artifactId>
   <dependencies>
     <dependency>
       <groupId>${pom.groupId}</groupId>
       <artifactId>org.osgi.core</artifactId>
-      <version>${pom.version}</version>
-      <scope>provided</scope>
     </dependency>
     <dependency>
       <groupId>${pom.groupId}</groupId>
       <artifactId>org.osgi.compendium</artifactId>
-      <version>${pom.version}</version>
-      <scope>provided</scope>
     </dependency>
   </dependencies>
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.felix.plugins</groupId>
-        <artifactId>maven-osgi-plugin</artifactId>
-        <version>${pom.version}</version>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
         <extensions>true</extensions>
         <configuration>
-          <osgiManifest>
-            <bundleName>LogService</bundleName>
-            <bundleSymbolicName>${pom.artifacfId}</bundleSymbolicName>
-            <bundleVendor>Apache Software Foundation</bundleVendor>
-            <bundleDescription>
-              This bundle provides an implementation of the OSGi R4 Log service.
-            </bundleDescription>
-            <bundleActivator>
-              org.apache.felix.log.impl.Activator
-            </bundleActivator>
-            <importPackage>
-              org.osgi.framework, org.osgi.service.log; version=1.3
-            </importPackage>
-            <exportService>
-                 org.osgi.service.log.LogService, org.osgi.service.log.LogReaderService
-            </exportService>
-          </osgiManifest>
+          <instructions>
+            <Export-Package>org.osgi.service.log</Export-Package>
+            <Private-Package>org.apache.felix.log.impl</Private-Package>
+            <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
+            <Bundle-Activator>${pom.artifactId}.impl.Activator</Bundle-Activator>
+            <Export-Service>org.osgi.service.log.LogService,org.osgi.service.log.LogReaderService</Export-Service>
+          </instructions>
         </configuration>
       </plugin>
     </plugins>
diff --git a/main/pom.xml b/main/pom.xml
index 67eb626..4dd6105 100644
--- a/main/pom.xml
+++ b/main/pom.xml
@@ -23,7 +23,7 @@
     <version>0.8.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
-  <packaging>jar</packaging>
+  <packaging>bundle</packaging>
   <name>Apache Felix Main</name>
   <artifactId>org.apache.felix.main</artifactId>
   <dependencies>
@@ -39,15 +39,18 @@
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.maven.plugins</groupId>
-        <artifactId>maven-jar-plugin</artifactId>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
+        <extensions>true</extensions>
         <configuration>
-          <archive>
-            <manifestFile>src/main/manifest/Manifest.mf</manifestFile>
-            <manifest>
-              <mainClass>org.apache.felix.main.Main</mainClass>
-            </manifest>
-          </archive>
+          <instructions>
+            <Main-Class>org.apache.felix.main.Main</Main-Class>
+            <Bundle-Name>Apache Felix</Bundle-Name>
+            <Bundle-Description>OSGi R4 framework.</Bundle-Description>
+            <Private-Package>org.apache.felix.*,org.osgi.*</Private-Package>
+            <Import-Package>!*</Import-Package>
+            <Include-Resource>{src/main/resources/}</Include-Resource>
+          </instructions>
         </configuration>
       </plugin>
       <plugin>
@@ -59,8 +62,6 @@
               <tasks>
                 <delete dir="${basedir}/bin"/>
                 <mkdir dir="${basedir}/bin"/>
-                <delete dir="${basedir}/lib"/>
-                <mkdir dir="${basedir}/lib"/>
                 <delete dir="${basedir}/conf"/>
                 <mkdir dir="${basedir}/conf"/>
                 <delete dir="${basedir}/bundle"/>
@@ -69,10 +70,6 @@
       tofile="${basedir}/bin/felix.jar"/>
 <copy file="${basedir}/target/classes/config.properties"
       todir="${basedir}/conf"/>
-<copy file="${basedir}/../framework/target/org.apache.felix.framework-${pom.version}.jar"
-      todir="${basedir}/lib"/>
-<copy file="${basedir}/../org.osgi.core/target/org.osgi.core-${pom.version}.jar"
-      todir="${basedir}/lib"/>
 <copy file="${basedir}/../shell/target/org.apache.felix.shell-${pom.version}.jar"
       todir="${basedir}/bundle"/>
 <copy file="${basedir}/../shell.tui/target/org.apache.felix.shell.tui-${pom.version}.jar"
@@ -93,6 +90,6 @@
         <directory>src/main/resources</directory>
         <filtering>true</filtering>
       </resource>
-    </resources>
+    </resources> 
   </build>
 </project>
diff --git a/main/src/main/manifest/Manifest.mf b/main/src/main/manifest/Manifest.mf
deleted file mode 100644
index 5fdd8e5..0000000
--- a/main/src/main/manifest/Manifest.mf
+++ /dev/null
@@ -1,4 +0,0 @@
-Main-Class: org.apache.felix.main.Main
-Class-Path: ../lib/org.apache.felix.framework-0.8.0-SNAPSHOT.jar 
- ../lib/org.osgi.core-0.8.0-SNAPSHOT.jar 
-
diff --git a/org.osgi.compendium/pom.xml b/org.osgi.compendium/pom.xml
index 10eb4d8..6f9d728 100644
--- a/org.osgi.compendium/pom.xml
+++ b/org.osgi.compendium/pom.xml
@@ -6,48 +6,43 @@
   </parent>
   <modelVersion>4.0.0</modelVersion>
   <name>OSGi R4 Compendium Bundle</name>
+  <description>OSGi Service Platform Release 4 Compendium Interfaces and Classes.</description>
   <artifactId>org.osgi.compendium</artifactId>
-  <packaging>osgi-bundle</packaging>
+  <packaging>bundle</packaging>
   <dependencies>
     <dependency>
       <groupId>${pom.groupId}</groupId>
       <artifactId>org.osgi.core</artifactId>
       <version>${pom.version}</version>
-      <scope>provided</scope>
     </dependency>
     <dependency>
       <groupId>${pom.groupId}</groupId>
       <artifactId>javax.servlet</artifactId>
       <version>${pom.version}</version>
-      <scope>provided</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.felix</groupId>
       <artifactId>org.osgi.foundation</artifactId>
       <version>${pom.version}</version>
-      <scope>provided</scope>
     </dependency>
   </dependencies>
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.felix.plugins</groupId>
-        <artifactId>maven-osgi-plugin</artifactId>
-        <version>${pom.version}</version>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
         <extensions>true</extensions>
         <configuration>
-          <osgiManifest>
-            <bundleName>osgi.compendium</bundleName>
-            <bundleVendor>OSGi Alliance</bundleVendor>
-            <bundleVersion>4</bundleVersion>
-            <bundleSymbolicName>osgi.compendium</bundleSymbolicName>
-            <bundleDescription>OSGi Service Platform Release 4 Compendium Interfaces and Classes.</bundleDescription>
-            <bundleCopyright>Copyright (c) OSGi Alliance (2000, 2005). All Rights Reserved.</bundleCopyright>
-            <bundleCategory>osgi</bundleCategory>
-            <bundleDocUrl>http://www.osgi.org/</bundleDocUrl>
-            <exportPackage>org.osgi.service.cm ;specification-version="1.2",org.osgi.service.component ;specification-version="1.0",org.osgi.service.device ;specification-version="1.1",org.osgi.service.event ;specification-version="1.1",org.osgi.service.http ;specification-version="1.2",org.osgi.service.io ;specification-version="1.0",org.osgi.service.log ;specification-version="1.3",org.osgi.service.metatype ;specification-version="1.1",org.osgi.service.prefs ;specification-version="1.1",org.osgi.service.provisioning ;specification-version="1.1",org.osgi.service.upnp ;specification-version="1.1",org.osgi.service.useradmin ;specification-version="1.1",org.osgi.service.wireadmin ;specification-version="1.0",org.osgi.util.measurement ;specification-version="1.0",org.osgi.util.position ;specification-version="1.0",org.osgi.util.tracker ;specification-version="1.3.2",org.osgi.util.xml ;specification-version="1.0"</exportPackage>
-            <dynamicImportPackage>*</dynamicImportPackage>
-          </osgiManifest>
+          <instructions>
+            <Export-Package>!org.osgi.framework,!org.osgi.service.condpermadmin,!org.osgi.service.packageadmin,!org.osgi.service.permissionadmin,!org.osgi.service.startlevel,!org.osgi.service.url,org.osgi.*</Export-Package>
+            <Import-Package>!org.osgi,*</Import-Package>
+            <Dynamic-ImportPackage>*</Dynamic-ImportPackage>
+            <Bundle-Version>4</Bundle-Version>
+            <Bundle-Vendor>OSGi Alliance</Bundle-Vendor>
+            <Bundle-Copyright>Copyright (c) OSGi Alliance (2000, 2005). All Rights Reserved.</Bundle-Copyright>
+            <Bundle-Category>osgi</Bundle-Category>
+            <Bundle-DocURL>http://www.osgi.org/</Bundle-DocURL>
+          </instructions>
         </configuration>
       </plugin>
     </plugins>
diff --git a/org.osgi.core/pom.xml b/org.osgi.core/pom.xml
index be3f426..6d2ea27 100644
--- a/org.osgi.core/pom.xml
+++ b/org.osgi.core/pom.xml
@@ -24,28 +24,25 @@
   </parent>
   <modelVersion>4.0.0</modelVersion>
   <name>OSGi R4 Core Bundle</name>
+  <description>OSGi Service Platform Release 4 Core Interfaces and Classes.</description>
   <artifactId>org.osgi.core</artifactId>
-  <packaging>osgi-bundle</packaging>
+  <packaging>bundle</packaging>
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.felix.plugins</groupId>
-        <artifactId>maven-osgi-plugin</artifactId>
-        <version>${pom.version}</version>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
         <extensions>true</extensions>
         <configuration>
-          <osgiManifest>
-            <bundleName>osgi.core</bundleName>
-            <bundleVendor>OSGi Alliance</bundleVendor>
-            <bundleVersion>4</bundleVersion>
-            <bundleSymbolicName>osgi.core</bundleSymbolicName>
-            <bundleDescription>OSGi Service Platform Release 4 Core Interfaces and Classes.</bundleDescription>
-            <bundleCopyright>Copyright (c) OSGi Alliance (2000, 2005). All Rights Reserved.</bundleCopyright>
-            <bundleCategory>osgi</bundleCategory>
-            <bundleDocUrl>http://www.osgi.org/</bundleDocUrl>
-            <exportPackage>org.osgi.framework; specification-version="1.3", org.osgi.service.condpermadmin; specification-version="1.0", org.osgi.service.packageadmin; specification-version="1.2", org.osgi.service.permissionadmin; specification-version="1.2", org.osgi.service.startlevel; specification-version="1.0", org.osgi.service.url; specification-version="1.0"</exportPackage>
-            <!--<dynamicImportPackage>*</dynamicImportPackage>-->
-          </osgiManifest>
+          <instructions>
+            <Export-Package>org.osgi.framework, org.osgi.service.condpermadmin, org.osgi.service.packageadmin, org.osgi.service.permissionadmin, org.osgi.service.startlevel, org.osgi.service.url</Export-Package>
+            <Import-Package>!org.osgi.*,*</Import-Package>
+            <Bundle-Version>4</Bundle-Version>
+            <Bundle-Vendor>OSGi Alliance</Bundle-Vendor>
+            <Bundle-Copyright>Copyright (c) OSGi Alliance (2000, 2006). All Rights Reserved.</Bundle-Copyright>
+            <Bundle-Category>osgi</Bundle-Category>
+            <Bundle-DocUrl>http://www.osgi.org/</Bundle-DocUrl>
+          </instructions>
         </configuration>
       </plugin>
     </plugins>
diff --git a/org.osgi.foundation/pom.xml b/org.osgi.foundation/pom.xml
index d145a74..c999ac7 100644
--- a/org.osgi.foundation/pom.xml
+++ b/org.osgi.foundation/pom.xml
@@ -1,3 +1,20 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements.  See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership.  The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License.  You may obtain a copy of the License at
+
+    http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied.  See the License for the
+ specific language governing permissions and limitations
+ under the License. -->
 <project>
   <parent>
     <groupId>org.apache.felix</groupId>
@@ -10,11 +27,5 @@
   <dependencies>
   </dependencies>
   <build>
-    <resources>
-      <resource>
-        <directory>src/main/resources</directory>
-        <filtering>true</filtering>
-      </resource>
-    </resources>
   </build>
 </project>
diff --git a/shell.tui/pom.xml b/shell.tui/pom.xml
index 4ef4d1b..4be7766 100644
--- a/shell.tui/pom.xml
+++ b/shell.tui/pom.xml
@@ -23,41 +23,38 @@
     <version>0.8.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
-  <packaging>osgi-bundle</packaging>
-  <name>Apache Felix Shell Text Interface</name>
+  <packaging>bundle</packaging>
+  <name>Apache Felix Shell TUI</name>
+  <description>A simple textual user interface for Felix' shell service.</description>
   <artifactId>org.apache.felix.shell.tui</artifactId>
   <dependencies>
     <dependency>
       <groupId>${pom.groupId}</groupId>
       <artifactId>org.osgi.core</artifactId>
       <version>${pom.version}</version>
-      <scope>provided</scope>
     </dependency>
     <dependency>
       <groupId>${pom.groupId}</groupId>
       <artifactId>org.apache.felix.shell</artifactId>
       <version>${pom.version}</version>
-      <scope>provided</scope>
     </dependency>
   </dependencies>
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.felix.plugins</groupId>
-        <artifactId>maven-osgi-plugin</artifactId>
-        <version>${pom.version}</version>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
         <extensions>true</extensions>
         <configuration>
-          <osgiManifest>
-            <bundleName>ShellTUI</bundleName>
-            <bundleDescription>A simple textual user interface for Felix' shell service.</bundleDescription>
-            <bundleActivator>auto-detect</bundleActivator>
-            <bundleDocUrl>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/</bundleDocUrl>
-            <bundleUrl>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/${pom.artifactId}-${pom.version}.jar</bundleUrl>
-            <bundleSource>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/${pom.artifactId}-${pom.version}-src.jar</bundleSource>
-            <bundleSymbolicName>${pom.artifactId}</bundleSymbolicName>
-            <importService>org.apache.felix.shell.ShellService</importService>
-          </osgiManifest>
+          <instructions>
+            <Private-Package>org.apache.felix.shell.tui.*</Private-Package>
+            <Bundle-Activator>org.apache.felix.shell.tui.Activator</Bundle-Activator>
+            <Bundle-DocUrl>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/</Bundle-DocUrl>
+            <Bundle-Url>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/${pom.artifactId}-${pom.version}.jar</Bundle-Url>
+            <Bundle-Source>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/${pom.artifactId}-${pom.version}-src.jar</Bundle-Source>
+            <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
+            <Import-Service>org.apache.felix.shell.ShellService</Import-Service>
+          </instructions>
         </configuration>
       </plugin>
     </plugins>
diff --git a/shell/pom.xml b/shell/pom.xml
index 08b5493..57f6af5 100644
--- a/shell/pom.xml
+++ b/shell/pom.xml
@@ -23,37 +23,31 @@
     <version>0.8.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
-  <packaging>osgi-bundle</packaging>
+  <packaging>bundle</packaging>
   <name>Apache Felix Shell Service</name>
+  <description>A simple OSGi command shell service.</description>
   <artifactId>org.apache.felix.shell</artifactId>
   <dependencies>
     <dependency>
       <groupId>${pom.groupId}</groupId>
       <artifactId>org.osgi.core</artifactId>
       <version>${pom.version}</version>
-      <scope>provided</scope>
     </dependency>
   </dependencies>
   <build>
     <plugins>
       <plugin>
-        <groupId>org.apache.felix.plugins</groupId>
-        <artifactId>maven-osgi-plugin</artifactId>
-        <version>${pom.version}</version>
+        <groupId>org.apache.felix</groupId>
+        <artifactId>maven-bundle-plugin</artifactId>
         <extensions>true</extensions>
         <configuration>
-          <osgiManifest>
-            <bundleName>ShellService</bundleName>
-            <bundleDescription>A simple OSGi command shell service.</bundleDescription>
-            <bundleActivator>auto-detect</bundleActivator>
-            <bundleDocUrl>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/</bundleDocUrl>
-            <bundleUrl>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/${pom.artifactId}-${pom.version}.jar</bundleUrl>
-            <bundleSource>http://oscar-osgi.sf.net/obr2/${pom.artifactId}/${pom.artifactId}-${pom.version}-src.jar</bundleSource>
-            <bundleSymbolicName>${pom.artifactId}</bundleSymbolicName>
-            <exportPackage>${pom.artifactId}; specification-version="1.0.0", org.ungoverned.osgi.service.shell; specification-version="1.0.0"</exportPackage>
-            <exportService>${pom.artifactId}.ShellService, org.ungoverned.osgi.service.shell.ShellService</exportService>
-            <importService>org.osgi.service.startlevel.StartLevel, org.osgi.service.packageadmin.PackageAdmin</importService>
-          </osgiManifest>
+          <instructions>
+            <Export-Package>org.apache.felix.shell; org.ungoverned.osgi.service.shell; version=1.0.0</Export-Package>
+            <Private-Package>org.apache.felix.*</Private-Package>
+            <Bundle-Activator>org.apache.felix.shell.impl.Activator</Bundle-Activator>
+            <Export-Service>org.apache.felix.shell.ShellService, org.ungoverned.osgi.service.shell.ShellService</Export-Service>
+            <Import-Service>org.osgi.service.startlevel.StartLevel, org.osgi.service.packageadmin.PackageAdmin</Import-Service>
+          </instructions>
         </configuration>
       </plugin>
     </plugins>
