Skip to Content.
Sympa Menu

shibboleth-dev - Re: class loading order

Subject: Shibboleth Developers

List archive

Re: class loading order


Chronological Thread 
  • From: Tom Scavo <>
  • To:
  • Subject: Re: class loading order
  • Date: Mon, 22 Aug 2005 11:26:58 -0400
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=m0dndvA8iF0ct669amUqczjbJ5lcuMCYVHZnuE/MuP4JECTREl35TocSKYCNvrmO96FDepfEsQWnSrl0PP5Sc/xAv8YwR/EgQ2iTUI5S4olGfKnkEDzWABjcKIfGdfcoxQ23m8QjvJbx2pnaoAv0Aoz/Pq2pLJO4mDBp2L8YpKk=

On 8/22/05, Tom Scavo
<>
wrote:
>
> More importantly, class
> directories need to be searched before lib directories, right? This
> needs to be fixed in the buildfiles, I think.

This is the current path from extension-build.xml:

<path id="ext.path">
<!-- Shibboleth Libraries -->
<path refid="build.path" />

<!-- Shibboleth Classes -->
<pathelement location="${build}" />

<!-- Extension libraries -->
<fileset dir="${ext.lib}">
<include name="**/*.jar" />
</fileset>

<!-- Extension classes -->
<pathelement location="${ext.classes}" />

<!-- Extension test classes -->
<pathelement location="${ext.test.classes}" />
</path>

If order of path elments is important (and I think it is), this is
wrong. The path should be

<path id="ext.path">
<!-- Shibboleth Classes and Libraries -->
<path refid="build.path" />

<!-- Extension test classes -->
<pathelement location="${ext.test.classes}" />

<!-- Extension classes -->
<pathelement location="${ext.classes}" />

<!-- Extension libraries -->
<fileset dir="${ext.lib}">
<include name="**/*.jar" />
</fileset>
</path>

The explicit reference to ${build} is redundant and therefore not
needed. More importantly, extension classes need to be searched
before extension JARs.

Also, since the path needs to be modified anyway, I'll include the
following nit. The above path does triple duty since it's used for
both compile operations and the unit testing, but not all path
elements are needed for all three operations. Doesn't matter too
much, I guess, but the multiple paths defined in build.xml are perhaps
a better way of handling it.

Tom



Archive powered by MHonArc 2.6.16.

Top of Page