CopyTask

Copies files or directories. Files are only copied if the source file is newer than the destination file, or when the destination file does not exist. It is possible to explictly overwrite existing files.

CopyTask does not allow self copying, i.e. copying a file to the same name for security reasons.

Table 33. Attributes

Name Type Description Default Required
file String The source file. Yes  
tofile String

The destination the file is to be written to. tofile specifies a full filename. If you only want to specify a directory to copy to, use todir.

Either this or the todir attribute is required.

n/a Yes (or todir)
todir String The directory the file is to be copied to. The file will have the same name of the source file. If you want to specify a different name, use tofile. The directory must exist. n/a Yes (or tofile)
overwrite Boolean Overwrite existing files even if the destination files are newer. false No
tstamp or preservelastmodified Boolean If set to true, the new file will have the same mtime as the old one. false No
preservemode or preservepermissions Boolean If set to true, the new file (and directory) will have the same permissions as the old one. The mode specified for directory creation will be ignored. true No
includeemptydirs Boolean If set to true, also empty directories are copied. true No
mode Integer Mode (octal) to create directories with. From umask No
haltonerror Boolean If set to true, halts the build when errors are encountered. true No

Note

No automatic exapnsion of symbolic links

By default, CopyTask does not expand / dereference symbolic links, and will simply copy the link itself. To enable dereferencing, set expandsymboliclinks to true in the <fileset> tag.