You are viewing a plain text version of this content. The canonical link for it is here.
Posted to alexandria-dev@jakarta.apache.org by Leo Simons <le...@apache.org> on 2003/01/04 17:13:18 UTC

(no) circular dependency logkit->velocity->jakarta-site

Hi peeps,

jakarta-avalon-logkit gets this in the gump log:

Caught exception (org.apache.tools.ant.BuildException) while expanding 
tools.class.path: /home/rubys/jakarta/jakarta-site/lib not found.

my idea was to fix this by doing:

     <ant>
       <property name="jakarta-site.dir" project="jakarta-site2"
           reference="home" />
     </ant>

which got me:

      [java] java.lang.Exception: Circular dependency loop involving:
      [java]   jakarta-velocity
      [java]   jakarta-avalon-logkit
      [java]   jakarta-site2
      [java]     at Project.sort(Unknown Source)
      [java]     at Project.load(Unknown Source)
      [java]     at Jenny.<init>(Unknown Source)
      [java]     at Jenny.main(Unknown Source)

(velocity uses on logkit, which now implicitly depends on jakarta-site, 
which depends on velocity, which seems like a circular dependency).

which led to me scratching my head. There's not really a problem if 
logkit is used in the tool that builds the logkit website (after all, 
the logkit website is built only after logkit has been built). Also, 
velocity only has an optional dependency on logkit. But how do I tell 
gump this?

My first idea was to split buildfiles for logkit, but that'll increase 
maintainance overhead (avalon has too many build files :).

My second idea was to do:

     <ant>
       <property name="jakarta-site.dir"
           value="../jakarta-site2" />
     </ant>

but that's kinda ugly.

And then ideas ran out. Suggestions?

regards,

- Leo




--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: (no) circular dependency logkit->velocity->jakarta-site

Posted by Sam Ruby <ru...@apache.org>.
Leo Simons wrote:
> 
> (velocity uses on logkit, which now implicitly depends on jakarta-site, 
> which depends on velocity, which seems like a circular dependency).
[snip]
> And then ideas ran out. Suggestions?

Two suggestions:

1) does logkit depend on jakarta-site being built?  If not, try 
reference="srcdir" instead of reference="home".  See project/gump.xml 
for an example.

2) logkit can be built in two passes, without the need for another 
build.xml.  Simply code two "projects" referencing the same build.xml, 
generally with a separate target.  To make things simpler, the second 
can <depend> on the first, and specify inherit="all".

- Sam Ruby




--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>