Bill:

That's great :)

Glad to help...

I'm gonna add this to my ant scripts for my open source project :)

Scot

William Press wrote:
This works like a charm.  Thanks again for the help!

- Bill

-----Original Message-----
From: Scot P. Floess [mailto:[EMAIL PROTECTED] Sent: Wednesday, May 31, 2006 4:39 PM
To: Ant Users List
Subject: Re: Copying files from dirs specified by libpath

William:

It seems I do this far too often and am corrected as there may be some stock ant task to do what you want ;) However, you can use ant-contrib tasks - specifically <for> or <foreach> which will give you iterative capabilities over a list/path. If you "wrap" that in a macrodef, well you can make it even prettier...

For instance:

<project  name = "copy">
    <taskdef  resource = "net/sf/antcontrib/antlib.xml"/>

    <macrodef  name = "copy-ref-id">
        <attribute  name = "dest-dir"/>
        <attribute  name = "dir-ref"/>

        <sequential>
            <mkdir dir = "@{dest-dir}"/>
            <var   name = "FILE_LIST"  unset = "true"/>
            <pathconvert property = "FILE_LIST"  refid = "@{dir-ref}"/>

<for param = "dir" list = "${FILE_LIST}" delimiter = "${path.separator}">
                <sequential>
                    <copy todir = "@{dest-dir}">
                        <fileset dir = "@{dir}" includes = "**/*"/>
                    </copy>
                </sequential>
            </for>
        </sequential>
    </macrodef>
</project>

Now, to call the above...lets assume you actually use a libpath refid...

<copy-ref-id dest-dir = "/home/william/repo" dir-ref = "libpath"/>

Hope that helps...

Scot

William Press wrote:
Yes, that's correct.

-----Original Message-----
From: Scot P. Floess [mailto:[EMAIL PROTECTED] Sent: Wednesday, May 31, 2006 4:08 PM
To: Ant Users List
Subject: Re: Copying files from dirs specified by libpath

William:

So, just to clarify you want to iterate over each directory in libpath

and copy the files from each into a directory?

William Press wrote:
Greetings,

I have a libpath reference I'd like to use for copying files.
Specifically, the libpath reference contains a list of directories,
and
I would like to copy all of the files contained in these directories
into a target directory.

I realize I can convert this into a comma-delimited list of
directories
using <pathconvert>, but it doesn't seem there's a way of deriving a
fileset from this comma-delimited list.

Has anybody here solved this before?

Thanks,

Bill




--
Scot P. Floess
27 Lake Royale
Louisburg, NC  27549

252-478-8087 (Home)
919-754-4592 (Work)

Chief Architect JPlate  http://sourceforge.net/projects/jplate
Chief Architect JavaPIM http://sourceforge.net/projects/javapim

Reply via email to