Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to combine two Jar files

Tags:

java

applet

Is it possible to combine two jar files such that in an applet tag I can simply do something like

archive="jarjar.jar/jar1.jar"...  ...archive="jarjar.jar/jar2.jar"... instead of archive="jar1.jar"... ...archive="jar2.jar"... 

I need to only have one jar file so putting two jar files in a folder will not help me.

like image 466
Tony Avatar asked Feb 22 '11 15:02

Tony


2 Answers

Sure, just extract the two jar files and recreate a new one

$ mkdir tmp $ (cd tmp; unzip -uo ../jar1.jar) $ (cd tmp; unzip -uo ../jar2.jar) $ jar -cvf combined.jar -C tmp . 

The stuff with tmp ensures that the two existing jars are extracted into a clean directory and then the new one made from that.

Be aware that you may also need to merge any manifest.mf files contained therein, and if there are any also include the '-m' option in that file command.

like image 73
Alnitak Avatar answered Sep 28 '22 01:09

Alnitak


Use zipgroupfileset with the Ant Zip task

<zip destfile="out.jar">     <zipgroupfileset dir="lib" includes="*.jar"/> </zip> 

Might help you.

like image 45
ykombinator Avatar answered Sep 28 '22 00:09

ykombinator