對於一個java項目,我想將它所依賴的所有第三方jar合併到由Apache Ant創建的主jar中,我已經設法完成該jar。Ant:從合併的jar文件中排除文件
問題是,其中一些jar文件在其META-INF
目錄中有簽名文件,所以當我嘗試運行我的jar文件時,出現錯誤消息"Invalid signature file digest for Manifest main attributes"
。在我手動刪除簽名文件後,錯誤消失了。
我試圖過濾我的螞蟻文件中的簽名文件,excludes
-attribute或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>
我怎麼能在這個螞蟻任務的濾除產生的jar文件?謝謝你的幫助!
參見錯誤[zipgroupfileset應該支持嵌套圖案規格](https://bz.apache.org/bugzilla/show_bug.cgi?id=34403)。 – 2015-12-23 03:05:50