jarinjar的简单使用之打包第三方jar到一个可执行jar文件。

时间:2021-12-11 09:12:46

http://blog.csdn.net/harlow321/article/details/43086699

http://blog.csdn.net/caiqcong/article/details/7618582

因为有了Eclipse自带的Jar-in-Jar工具,使得我们可以把第三方的jar直接打包到我们自己的jar中,而不需要一个个解压再打入,非常方便,我们需要做的只是将jar-in-jar.zip打入我们的jar,然后将MANIFEST.MF写成相应的格式即可,一般来说我们的ant打包脚本应该如下所示:

 <!--打包jar文件 -->  
<target name="jar" depends="build" description="jar taget">
<!--构造打包时Class-Path需要的路径, pathsep是分隔符 -->
<pathconvert property="libs" pathsep=" ">
<mapper>
<chainedmapper>
<flattenmapper />
<!-- <globmapper from="*" to="lib/*" /> -->
</chainedmapper>
</mapper>
<!--按照mapper定义的格式组合lib目录下面的所有jar文件,形成诸如lib/jar1.jar lib/jar2.jar的字符串-->
<fileset dir="libs">
<include name="*.jar" />
</fileset>
</pathconvert>
<jar destfile="output/jar_in_jar_demo.jar" basedir="bin">
<manifest>
<attribute name="Main-Class" value="org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader"/>
<attribute name="Class-Path" value="."/>
<attribute name="Rsrc-Main-Class" value="com.yunshouhu.TestMain"/>
<attribute name="Rsrc-Class-Path" value="./ ${libs}"/>
</manifest>
<zipfileset src="libs/jar-in-jar-loader.zip"/>
<zipfileset dir="libs" includes="*.jar"/>
</jar>
</target>


工程源码例子下载:

jarinjar的简单使用之打包第三方jar到一个可执行jar文件。