Weblog

Finding jar library dependencies using JarJar

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
 ...
Share and Enjoy:
  • del.icio.us
  • Google Bookmarks
  • DZone
  • LinkedIn
  • SphereIt
  • StumbleUpon
  • Technorati

3 Responses to “Finding jar library dependencies using JarJar”

  1. Roman Says:

    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.

  2. IT-eye Weblog » Java jar dependency management using Ivy Says:

    [...] the ivy.xml files describing their dependencies takes some time. A great help here is the jarjar tool. Technorati Tags: java, dependency management, [...]

  3. A MattPayne.org blog » Blog Archive » IT-eye Weblog » Finding jar library dependencies using JarJar Says:

    [...] ibrary dependencies using JarJar

    by Payne @ 5:39 pm on May 2, 2006.

    IT-eye Weblog » Finding jar library dependencies using JarJar [...]

Leave a Reply