ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From peter reilly <peter.rei...@corvil.com>
Subject Re: GUMP failure caused by ANT (Re: [GUMP] Build Failure - Axis)
Date Wed, 10 Sep 2003 13:24:29 GMT
On Wednesday 10 September 2003 13:28, Stefan Bodewig wrote:
> On 10 Sep 2003, Stefan Bodewig <bodewig@apache.org> wrote:
> > (I'll soon commit a version that should make Axis happy for the next
> > - i.e. tomorrow's - Gump run).
>
> I could use some help here.
>
> The Axis build works if I back out Peter's change for Ant.java's
> revision 1.84 - and I don't have a good grasp of why this should be
> so.

I figured out that this was the change ;-).. I did not
really understand the original code, or why it was necessary.
I assumed that the changes in 1.6 from 1.5 with the deferred
execution of UnknownElement may be resposible - but was not
sure.

>
> If I do, Ant's CallTargetTest#testMultiCall fails with
>     [junit] expecting log to contain "multi is SETmulti is SET" log was
> "multi is SETmulti is DEFAULT"

This was the test (as far as I remember) that showed
the problem.

>
> The details, so that anybody who wants to help doesn't have to try to
> understand the Axis build process.
>
> The starting point is axis/java/buildTest.xml[1] with the target
> compileJunit.  The <foreach> is implemented by ForeachTask[2] which is
> strange enough in itself.
>
> This task creates a single instance of the Ant task and for each file
> in the nested fileset invokes Ant#createProperty to create a property
> named file with the absolute file name - it then goes on and executes
> the task, invoking the same build file using a target named
> compile-component (defined in the entity included targets.xml) which
> then dispatches to the named build file.

The code is a bit strange, it would have been simpler (and saver) to create
a new Ant object each time. Note that #executeForkedAntTask this is (by
accident) the behaviour.

I have made a change to Ant.java (attached) which will weed out
duplicate property elements. This should allow the Axis code to work.

I can commit this (with test case) if it solves the Axis problem.

Peter
>
> The last details are irrelevant.
>
> What happens is that with the CVS HEAD version, the property named
> file will always have the first file name in each child build file.
> If I back out Revision 1.84 it will have the last one, but it looks
> more as if the previous <property> would be ignored, rather than that
> some kind of override was going on.
>
> I'll look further, but maybe anybody else can see what's happening.
>
> Stefan
>
> Footnotes:
> [1]  http://cvs.apache.org/viewcvs/ws-axis/java/buildTest.xml
>
> [2] 
> http://cvs.apache.org/viewcvs/ws-axis/java/tools/org/apache/axis/tools/ant/
>foreach/ForeachTask.java
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
> For additional commands, e-mail: dev-help@ant.apache.org

Mime
View raw message