I have an ant exec task that is behaving inconsistently.

I have a list of centerid's and a "foreach" loop that calls the
following target:

    <target name="compile_alert_report" description="compile  detail
report for alerts">
        <echo>patient detail for patients NOT on alert for center
${centerid}</echo>
        <exec dir="${center.bin}" executable="${perl}" failonerror="true">
            <arg line=" reportAlertDetail.pl -e ${report.enddate} -c
${centerid}  -A x -a x  -o ${report.xml}/${BUILDTIME}" />
        </exec>
    </target>

The report script (reportAlertDetail.pl) outputs some diagnostic
information, and is supposed to write the output to an xml file (in the
directory identified by the "-o" switch. (${report.xml}/${BUILDTIME} in
this instance)


The problem is that the first report or two is written as expected and
then the output (that should be written to a file) ends up in standard
output (and is also logged to the ant output under the [exec] task)
The scripts that produce the reports all work as expected (and have been
working as expected for a long time) when you call them from a shell or
a shell script (bash or csh).
I tried setting spawn="yes" on the exec task, but that that didn't do
much (except hide the stdout with all the file contents).

Does anybody have any idea what is going on or where I might look to
debug this?

/opt/ant/bin/ant -v
Apache Ant version 1.8.1 compiled on April 30 2010


Larry Mills-Gahl

Reply via email to