经常需要在打包可执行jar包的时候,将众多jar打包成一个jar包,
但是只有一个主项目的MANIFEST.MF是需要的。其他的jar包的
MANIFEST.MF都可以忽略掉。
其实很简单的方法:
<zip destfile="final.jar">
<zipfileset src="store/temp_final.jar"
excludes="META-INF/*.SF, META-INF/*.DSA, META-INF/*.RSA,META-INF/MANIFEST.MF"/>
这里将其他jar包的MANIFEST.MF给去掉了。
<zipfileset src="dist/project.jar" includes="META-INF/**"/>
这里将project.jar里的MENIFEST.MF放到最终的jar包里
</zip>
zipfieset 的prefix属性是用来指明最终jar包里的目录结构,这提供了更加灵活的方式。但是只有一个主项目的MANIFEST.MF是需要的。其他的jar包的
MANIFEST.MF都可以忽略掉。
其实很简单的方法:
<zip destfile="final.jar">
<zipfileset src="store/temp_final.jar"
excludes="META-INF/*.SF, META-INF/*.DSA, META-INF/*.RSA,META-INF/MANIFEST.MF"/>
这里将其他jar包的MANIFEST.MF给去掉了。
<zipfileset src="dist/project.jar" includes="META-INF/**"/>
这里将project.jar里的MENIFEST.MF放到最终的jar包里
</zip>
不过这里不需要通过prefix来指明最终的jar包目录结构,如果是通过引入一个文件作为MANIFEST.MF,prefix属性就是经常需要的了。
不过一个文件就是使用<fileset >任务来引入了。