Just want to correct this...

The execution of Ant is always

1. parse
2. execute-implicit-targets (which includes the include/import)

When the import target is executed, it uses the same ProjectHelper
but not the same Handlers.  And the Project information is the same.
It calls parse on that handler, which increases the import stack.

Not sure how import and ProjectHelper for a specific build file
would work - that sounds ugly - but the documentation states that
import/include will only work with ProjectHelper2 so that's fine.

These files work (via command line) with Ant 1.8.

Brian

----- Original message -----
From: "Brian Repko" <[email protected]>
To: "Ant Users List" <[email protected]>
Date: Tue, 23 Feb 2010 07:03:11 -0600
Subject: Re: AW: Nested import task problem / anttask problem


I'm in the process of fixing a similar bug related to imports
and extensionOf/extension-point.

The import mechanism creates a ProjectHelper for each import
and the ProjectHelper holds the list of targets so that the
design of Ant import looks to be that you can only depend on
targets "below" you and not in the importing xml.

I'm not sure if that is the intended design of import or if
that is considered a bug...I'm going to look at 1.7.1 and 
see how import worked there.  It might be a few days to get
back to this but just wanted to communicate that...

Brian


----- Original message -----
From: [email protected]
To: [email protected]
Date: Tue, 23 Feb 2010 13:53:40 +0100
Subject: AW: Nested import task problem / anttask problem

Not sure about the <project default=""> in b.xml ...


Jan 

>-----Ursprüngliche Nachricht-----
>Von: Gopala Krishna [mailto:[email protected]] 
>Gesendet: Dienstag, 23. Februar 2010 13:18
>An: [email protected]
>Betreff: Nested import task problem / anttask problem
>
>Hi,
>
> 
>
>I am trying to execute an ant target through program. I have 
>used import task and those are nested in each build file. This 
>is working fine when executed via command line and throwing 
>error when I execute target-a using ProjectHelper.
>
> 
>
>The below are my ant build files. Has anyone tried these kind 
>of import tasks. Please let me know where exactly I am going 
>wrong with this.
>
> 
>
>a.xml:
>
>======
>
><project name="project-a" basedir="." Default="target-b">
>
> <import file="b.xml"/>
>
>  <target name="target-a">
>
>    <echo file="/tmp/project-a.txt">This is target a</echo>
>
>  </target>
>
></project>
>
> 
>
>b.xml:
>
>======
>
><project name="project-b" basedir="." default="">
>
>  <import file="c.xml"/>
>
>    <target name="target-b">
>
>            <echo file="/tmp/project-b.txt">This is target b</echo>
>
>            <antcall target="_warnExists"/>
>
>  </target>
>
>  <target name="target-b1">
>
>                        <antcall target="_warnExists"/>
>
>  </target>
>
>            <target name="_warnExists">
>
>                        <echo>Appears to already exist</echo>
>
>            </target>
>
></project>
>
> 
>
>c.xml:
>
>======
>
><project name="project-c" basedir="." default="">
>
>  <target name="target-c" depends=" target-b,target-a">
>
>    <echo file="/tmp/project-c.txt">This is target c</echo>
>
>  </target>
>
></project>
>
> 
>
>I am getting the error  ""C:\build\test\test\b.xml:5: The 
>following error occurred while executing this line:
>
>Target "target-a" does not exist in the project "project-b". 
>It is used from target "target-c".""
>
> 
>
>Your help is more appreciate.
>
> 
>
>Thanks
>
>Gopal
>
> 
>
> 
>
> 
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to