ant-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject [Bug 53241] New: property substitution in macrodef failing
Date Wed, 16 May 2012 12:19:38 GMT

          Priority: P2
            Bug ID: 53241
           Summary: property substitution in macrodef failing
          Severity: normal
    Classification: Unclassified
          Hardware: Macintosh
            Status: NEW
           Version: 1.8.2
         Component: Other
           Product: Ant

I have looked through the other property substitution bugs but nothing seems to
quite fit this situation.  Also, I can't be sure this isn't a bug in
ant-contrib, since i found it using ant-contrib, but since it is related to
property substitution I assumed ant core.  Perhaps I'm mistaken.  In any case,
here's the issue as seen in this example snippet:

<?xml version="1.0" encoding="UTF-8"?>
<project name="test" default="" basedir="../">

    <path id="classpath">
        <fileset dir="${basedir}/lib">
            <include name="**/*.jar" />
    <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="classpath"

    <target name="test">
        <macro1>execute this</macro1>
    <macrodef name="macro1">
        <text name="text" />
            <property name="print.this" value="@{text}"/>
            <echo message="print.this: ${print.this}"/>
    <macrodef name="macro2">
        <text name="text" />
            <echo message="text: @{text}"/>
            <shellscript shell="bash" dir=""
            <echo message="output-@{text}: ${output-@{text}}"/>    

and the output:

     [echo] print.this: execute this
     [echo] text: execute this
[shellscript] Result: 127
     [echo] output-execute this: ${output-${print.this}}

notice that the 'text' passed in is not substituted properly when echoed the
last time.  somehow, the substitution of the macrodef's @{text} ended up with
the literal ${print.this} instead of the value of that property 'execute this'.

You are receiving this mail because:
You are the assignee for the bug.

View raw message