diff --git a/karaf/deployer/blueprint/NOTICE b/karaf/deployer/blueprint/NOTICE
new file mode 100644
index 0000000..2f69501
--- /dev/null
+++ b/karaf/deployer/blueprint/NOTICE
@@ -0,0 +1,21 @@
+Apache Felix Karaf
+Copyright 2009 The Apache Software Foundation
+
+
+I. Included Software
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+Licensed under the Apache License 2.0.
+
+
+II. Used Software
+
+This product uses software developed at
+The OSGi Alliance (http://www.osgi.org/).
+Copyright (c) OSGi Alliance (2000, 2009).
+Licensed under the Apache License 2.0.
+
+
+III. License Summary
+- Apache License 2.0
diff --git a/karaf/deployer/blueprint/pom.xml b/karaf/deployer/blueprint/pom.xml
index 70b9116..924c6b5 100644
--- a/karaf/deployer/blueprint/pom.xml
+++ b/karaf/deployer/blueprint/pom.xml
@@ -35,6 +35,10 @@
 
     <description>This deployer transforms a plain blueprint xml file to a deployable bundle</description>
 
+    <properties>
+        <appendedResourcesDirectory>${basedir}/../../etc/appended-resources</appendedResourcesDirectory>
+    </properties>
+
     <dependencies>
         <dependency>
             <groupId>org.apache.felix</groupId>
@@ -68,6 +72,7 @@
                     <instructions>
                         <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
                         <Export-Package>${pom.artifactId}*;version=${project.version}</Export-Package>
+                        <Import-Package>!${pom.artifactId}*,*</Import-Package>
                         <Private-Package>org.apache.felix.karaf.deployer.blueprint</Private-Package>
                         <_versionpolicy>${bnd.version.policy}</_versionpolicy>
                     </instructions>
diff --git a/karaf/deployer/features/NOTICE b/karaf/deployer/features/NOTICE
new file mode 100644
index 0000000..2f69501
--- /dev/null
+++ b/karaf/deployer/features/NOTICE
@@ -0,0 +1,21 @@
+Apache Felix Karaf
+Copyright 2009 The Apache Software Foundation
+
+
+I. Included Software
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+Licensed under the Apache License 2.0.
+
+
+II. Used Software
+
+This product uses software developed at
+The OSGi Alliance (http://www.osgi.org/).
+Copyright (c) OSGi Alliance (2000, 2009).
+Licensed under the Apache License 2.0.
+
+
+III. License Summary
+- Apache License 2.0
diff --git a/karaf/deployer/features/pom.xml b/karaf/deployer/features/pom.xml
index 19cee2b..0e78670 100644
--- a/karaf/deployer/features/pom.xml
+++ b/karaf/deployer/features/pom.xml
@@ -35,6 +35,10 @@
 
     <description>This deployer can deploy features descriptor on the fly</description>
 
+    <properties>
+        <appendedResourcesDirectory>${basedir}/../../etc/appended-resources</appendedResourcesDirectory>
+    </properties>
+
     <dependencies>
         <dependency>
             <groupId>org.apache.felix</groupId>
@@ -72,6 +76,7 @@
                     <instructions>
                         <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
                         <Export-Package>${pom.artifactId}*;version=${project.version}</Export-Package>
+                        <Import-Package>!${pom.artifactId}*,*</Import-Package>
                         <Private-Package>org.apache.felix.karaf.deployer.features</Private-Package>
                         <_versionpolicy>${bnd.version.policy}</_versionpolicy>
                     </instructions>
diff --git a/karaf/deployer/spring/NOTICE b/karaf/deployer/spring/NOTICE
new file mode 100644
index 0000000..2f69501
--- /dev/null
+++ b/karaf/deployer/spring/NOTICE
@@ -0,0 +1,21 @@
+Apache Felix Karaf
+Copyright 2009 The Apache Software Foundation
+
+
+I. Included Software
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
+Licensed under the Apache License 2.0.
+
+
+II. Used Software
+
+This product uses software developed at
+The OSGi Alliance (http://www.osgi.org/).
+Copyright (c) OSGi Alliance (2000, 2009).
+Licensed under the Apache License 2.0.
+
+
+III. License Summary
+- Apache License 2.0
diff --git a/karaf/deployer/spring/pom.xml b/karaf/deployer/spring/pom.xml
index e3ee5a6..77156ae 100644
--- a/karaf/deployer/spring/pom.xml
+++ b/karaf/deployer/spring/pom.xml
@@ -35,6 +35,10 @@
 
     <description>This deployer transforms a plain spring xml file to a deployable bundle</description>
 
+    <properties>
+        <appendedResourcesDirectory>${basedir}/../../etc/appended-resources</appendedResourcesDirectory>
+    </properties>
+
     <dependencies>
         <dependency>
             <groupId>org.apache.felix</groupId>
@@ -68,6 +72,7 @@
                     <instructions>
                         <Bundle-SymbolicName>${pom.artifactId}</Bundle-SymbolicName>
                         <Export-Package>${pom.artifactId}*;version=${project.version}</Export-Package>
+                        <Import-Package>!${pom.artifactId}*,*</Import-Package>
                         <Private-Package>org.apache.felix.karaf.deployer.spring</Private-Package>
                         <_versionpolicy>${bnd.version.policy}</_versionpolicy>
                     </instructions>
