On Fri, 26 Sep 2003, Peter W. Draper wrote:
> The handle is what jar files are referenced in the class-path of the main
> jar file of an application or class library package. In the case of JNIAST
> the main jar file manifest contains ../util/util.jar, which itself
> currently refers to ../junit/junit.jar and ../ant.jar (!what's ANT doing
> there!),
org.apache.tools.bzip2.CBZip2InputStream I'm afraid.
> both of which are deadends (no ../ relative parts in their
> class-path manifests). So this tells us that JNIAST also needs the UTIL,
> JUNIT and ANT packages.
true, and this would work, but it is often the case that they explode
to reference pretty much everything. For instance TABLE uses just one
class from FITS, but FITS references ARRAY, NDX, HDS, JNIHDS, JNIAST,
HDX ... none of which TABLE requires. So it may not be very efficient
in a lot of cases.
> The simplest way to manage this is therefore to extract this information
> from the package build files (probably best to put this in a local file
> that is read during the build and can be easily found/parsed by any
util.SuperJar automates this process by looking in the manifests
themselves, though I'm not saying it's necessarily the best way to
do it (I knocked that class up for my own purposes and it may not be
bulletproof).
> supporting process). Any takers to hack the (currently) 36 build files to
> do this?
that sounds like my cue to remember I'm working for ESO till december.
--
Mark Taylor Starlink Programmer Physics, Bristol University, UK
[log in to unmask] 0117 928 8776 http://www.star.bris.ac.uk/~mbt/
|