Here’s a usefull tool: using JarJar you can easily find all the dependencies between the jar files you use. I’ve added a JarJar target to my ant build file to display these dependencies:
...
<path id="classpath">
<fileset dir=".">
<include name="**/*.jar"/>
</fileset>
</path>
…
<target name="show.dependencies">
<property name="lib.classpath" refid="classpath"/>
<java jar="tonic/jarjar/0.6/jarjar.jar" fork="true">
<arg value="–find"/>
<arg value="–level=jar"/>
<arg value="${lib.classpath}"/>
</java>
</target>
…
Running this target result in the following output:
... [java] ...\oracle\adf\10.1.2\adfm.jar -> ...\oracle\jdbc\10.1.4\ojdbc14.jar [java] ...\oracle\adf\10.1.2\adfm.jar -> ...\sax\sax\2.0.1\sax.jar [java] ...\oracle\adf\10.1.2\adftags.jar -> ...\sun\servlet\2.3\servlet.jar [java] ...\oracle\adf\10.1.2\adftags.jar -> ...\oracle\bc4j\10.1.2\bc4jhtml.jar [java] ...\oracle\adf\10.1.2\adftags.jar -> ...\oracle\bc4j\10.1.2\bc4jmt.jar [java] ...\oracle\adf\10.1.2\adftags.jar -> ...\oracle\adf\10.1.2\adfm.jar [java] ...\oracle\adf\10.1.2\adftags.jar -> ...\oracle\adf\10.1.2\adf-controller.jar [java] ...\oracle\bc4j\10.1.2\bc4jct.jar -> ...\oracle\bc4j\10.1.2\bc4jmt.jar [java] ...\oracle\bc4j\10.1.2\bc4jct.jar -> ...\sun\collections\1.0\collections.jar ...

August 5th, 2005 at 10:30:03
This are of course only the dependencies that would make your program uncompilable, if broken.
Dependencies via properties/String-based classloading can not be recognized that way.
January 5th, 2006 at 08:59:44
[...] the ivy.xml files describing their dependencies takes some time. A great help here is the jarjar tool. Technorati Tags: java, dependency management, [...]
May 3rd, 2006 at 03:39:24
[...] ibrary dependencies using JarJar
by Payne @ 5:39 pm on May 2, 2006.
IT-eye Weblog » Finding jar library dependencies using JarJar [...]