1

I have populated a fileset at the start of script as follows;

<!-- Define the list of projects to be built -->
<fileset id="ivy.buildlist.fileset" dir="${ivy.buildlist.dir}" includes="${ivy.buildlist.includes}" excludes="${ivy.buildlist.excludes}" />

But I want to update this ref if user select a particular task. For that I have written a new target with <intersect> which will be called but its not updating the reference;

<target name="getPreReleaseList" description="Target to override the component list for pre release" >
    <echo message="Existing List : ${toString:ivy.buildlist.fileset}" />
    <intersect>
        <fileset refid="ivy.buildlist.fileset" />
        <fileset dir="${ivy.buildlist.dir}" 
            includes="${ivy.pre.buildlist.includes}"
            excludes="${ivy.pre.buildlist.excludes}" />
    </intersect>
    <echo message="Updated List : ${toString:ivy.buildlist.fileset}" />
</target>

Before and after list in ivy.buildlist.fileset is same :(. Am I missing anything or do I have adapt a different approach.

SJunejo
  • 1,316
  • 4
  • 23
  • 39

1 Answers1

0

Your problem is due to the fact that ant properties are immutable.

In order to modify a property, you could either use the variable task or use a macrodef.

I suggest you take a look at the following question for more detail.

Community
  • 1
  • 1
VirtualTroll
  • 3,077
  • 1
  • 30
  • 47