You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ant.apache.org by Radha Sangal <Ra...@pega.com> on 2005/01/11 16:30:50 UTC

passing parameters to ant

This might be a silly mistake, so I m asking for few more eyes to see
it. Please help!

 

We have an xml-rpc client calling a method on the server which executes
the following bat file.

 

Command line from "automated_Builds_Diffs.bat"

cmd /c ant -buildfile
D:\v04_E\Build_Scripts\CvsDiffReports\automated_cvsdiffs.xml manualDiff
-D DevBuild1=$1  -D DevBuild2=$2 > D:\test2.txt

 

($1 and $2 are passed from the client and are tested to have the right
value at run time)

 

Ant script "automated_cvsdiffs.xml" receiving these parameters:

<target name="manualDiff">

                        <!-- TO use manual diff, set the build names
below. This targets DEV build only -->

                        <property name="DevBuild1"
value="$(DevBuild1)"/>

                        <property name="DevBuild2"
value="$(DevBuild2)"/>

                        <echo message="Starting CVS Difference Report
(${DevBuild1} to ${DevBuild2})"/> 

                        

Output as in test2.txt :

manualDiff:

     [echo] Starting CVS Difference Report ($(DevBuild1) to
$(DevBuild2))

 

Script is failing here; the parameters are not getting populated. I have
tried some combinations like changing the names etc., but of no use. 

This is some small syntax which I am probably not able to see here.

 

 


Re: passing parameters to ant

Posted by Jeffrey E Care <ca...@us.ibm.com>.
1) IIRC there _must not_ be a space betwixt "-D" and the property: i.e. 
your command line should look like this:

    cmd /c ant -buildfile
    D:\v04_E\Build_Scripts\CvsDiffReports\automated_cvsdiffs.xml 
manualDiff
    -DDevBuild1=$1 -DDevBuild2=$2 > D:\test2.txt

2) You might consider using the "-l" option instead of redirecting the 
output.

3) Your stanza <property name="DevBuild1"> value="$(DevBuild1)"/> is 
completely wrong & totally unnecessary if you pass in the parameters 
correctly.

-- 
Jeffrey E. Care (carej@us.ibm.com)
WebSphere Build SWAT Team Lead
WebSphere Build Tooling Lead (Project Mantis)
https://w3.opensource.ibm.com/projects/mantis


"Radha Sangal" <Ra...@pega.com> wrote on 01/11/2005 10:30:50 AM:

> [snip]
> 
> cmd /c ant -buildfile
> D:\v04_E\Build_Scripts\CvsDiffReports\automated_cvsdiffs.xml manualDiff
> -D DevBuild1=$1  -D DevBuild2=$2 > D:\test2.txt
> 
> 
> 
> ($1 and $2 are passed from the client and are tested to have the right
> value at run time)
> 
> 
> 
> Ant script "automated_cvsdiffs.xml" receiving these parameters:
> 
> <target name="manualDiff">
> 
>                         <!-- TO use manual diff, set the build names
> 
below. This targets DEV build only -->
> 
>                         <property name="DevBuild1"
> value="$(DevBuild1)"/>
> 
>                         <property name="DevBuild2"
> value="$(DevBuild2)"/>
> 
>                         <echo message="Starting CVS Difference Report
> (${DevBuild1} to ${DevBuild2})"/> 
> 
> 
> 
> Output as in test2.txt :
> 
> manualDiff:
> 
>      [echo] Starting CVS Difference Report ($(DevBuild1) to
> $(DevBuild2))