How can I exclude *.DSA and *.SF files from shaded jar?

Dzmitry Kashlach picture Dzmitry Kashlach · Jul 15, 2013 · Viewed 7.9k times · Source

I have a section in pom.xml

 <filters>
   <filter>
      <artifact>*:*</artifact>
         <excludes>
            <exclude>META-INF/*.SF</exclude>
            <exclude>META-INF/*.DSA</exclude>
         </excludes>
   </filter>
</filters>

I want to exclude *.SF and *.DSA files from final jar. But I get the following message:

[INFO] No artifact matching filter *:*

and files are not excluded. Does anyone know how to overcome it?

Answer

Tim Veil picture Tim Veil · Sep 16, 2014

Actually you can do global filtering without needing to specify group id, you just need to use the correct wildcard syntax. If you want to exclude all *.RSA files from your jar, for example, specify the artifactId as *:*:*:*

<filters>
    <filter>
        <artifact>*:*:*:*</artifact>
        <excludes>
            <exclude>*.RSA</exclude>
        </excludes>
    </filter>
</filters>