Ant: исключить файлы из объединенного файла JAR
Для java-проекта, который я хотел бы объединить со всеми сторонними jar-файлами, зависит от основного jar-файла, созданного Apache Ant, что мне уже удалось сделать.
Проблема в том, что некоторые из этих jar-файлов содержат файлы сигнатурMETA-INF
-каталогов, поэтому, когда я пытаюсь запустить свой JAR-файл, я получаю сообщение об ошибке"Invalid signature file digest for Manifest main attributes"
, После того, как я вручную удалил файлы сигнатур, ошибка исчезла.
Я попытался отфильтровать файлы сигнатур в моем файле сexcludes
-атрибут илиexclude
-Tag, но, кажется, ничто не имеет никакого эффекта.
Это муравейник:
<target name="jar" description="Creates the jar file">
<mkdir dir="${jar}"/>
<jar destfile="${jar}/${ant.project.name}.jar" level="9" filesetmanifest="mergewithoutmain">
<zipgroupfileset dir="${lib}" includes="*.jar"/>
<zipfileset dir="${class}"/>
<manifest>
<attribute name="Main-Class" value="${mainclass}"/>
</manifest>
</jar>
</target>
Как я могу отфильтровать файлы из полученной банки в этой муравейной задаче? Спасибо за вашу помощь!