diff --git a/bundleplugin/src/main/java/org/apache/felix/bundleplugin/AbstractDependencyFilter.java b/bundleplugin/src/main/java/org/apache/felix/bundleplugin/AbstractDependencyFilter.java
index d19d549..06cf109 100644
--- a/bundleplugin/src/main/java/org/apache/felix/bundleplugin/AbstractDependencyFilter.java
+++ b/bundleplugin/src/main/java/org/apache/felix/bundleplugin/AbstractDependencyFilter.java
@@ -115,16 +115,17 @@
             StringBuilder tag = new StringBuilder();
             tag.append( clause.getKey() );
 
-            filter = new DependencyFilter( ( String ) clause.getKey() )
-            {
-                boolean matches( Artifact dependency )
+            if( !((String)clause.getKey()).matches("\\*~*") ) {
+                filter = new DependencyFilter( ( String ) clause.getKey() )
                 {
-                    return super.matches( dependency.getArtifactId() );
-                }
-            };
-
-            // FILTER ON MAIN CLAUSE
-            filter.filter( filteredDependencies );
+                    boolean matches( Artifact dependency )
+                    {
+                        return super.matches( dependency.getArtifactId() );
+                    }
+                };
+                // FILTER ON MAIN CLAUSE
+                filter.filter( filteredDependencies );
+            }
 
             for ( Iterator attrIterator = ( ( Map ) clause.getValue() ).entrySet().iterator(); attrIterator.hasNext(); )
             {
