diff --git a/bundleplugin/src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java b/bundleplugin/src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java
index 4b55175..80917e4 100644
--- a/bundleplugin/src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java
+++ b/bundleplugin/src/main/java/org/apache/felix/bundleplugin/BundlePlugin.java
@@ -851,8 +851,8 @@
         properties.put( Analyzer.IMPORT_PACKAGE, "*" );
         properties.put( Analyzer.BUNDLE_VERSION, currentProject.getVersion() );
 
-        // remove the verbose Include-Resource entry from generated manifest
-        properties.put( Analyzer.REMOVE_HEADERS, Analyzer.INCLUDE_RESOURCE );
+        // remove the extraneous Include-Resource and Private-Package entries from generated manifest
+        properties.put( Analyzer.REMOVE_HEADERS, Analyzer.INCLUDE_RESOURCE + ',' + Analyzer.PRIVATE_PACKAGE );
 
         header( properties, Analyzer.BUNDLE_DESCRIPTION, currentProject.getDescription() );
         StringBuffer licenseText = printLicenses( currentProject.getLicenses() );
@@ -934,7 +934,7 @@
             String pkg = ( String ) i.next();
 
             // mark all source packages as private by default (can be overridden by export list)
-            privatePkgs.append( pkg ).append( ',' );
+            privatePkgs.append( pkg ).append( ";-split-package:=merge-first," );
 
             // we can't export the default package (".") and we shouldn't export internal packages 
             if ( !( ".".equals( pkg ) || pkg.contains( ".internal" ) || pkg.contains( ".impl" ) ) )
