diff --git a/src/main/org/apache/tools/ant/taskdefs/Copyfile.java b/src/main/org/apache/tools/ant/taskdefs/Copyfile.java index 0a8efc783..0470d02d9 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Copyfile.java +++ b/src/main/org/apache/tools/ant/taskdefs/Copyfile.java @@ -70,11 +70,16 @@ public class Copyfile extends Task { private File srcFile; private File destFile; private boolean filtering = false; - + private boolean forceOverwrite = false; + public void setSrc(String src) { srcFile = project.resolveFile(src); } + public void setForceoverwrite(String force) { + forceOverwrite = Project.toBoolean(force); + } + public void setDest(String dest) { destFile = project.resolveFile(dest); } @@ -84,9 +89,9 @@ public class Copyfile extends Task { } public void execute() throws BuildException { - if (srcFile.lastModified() > destFile.lastModified()) { + if (forceOverwrite || srcFile.lastModified() > destFile.lastModified()) { try { - project.copyFile(srcFile, destFile, filtering); + project.copyFile(srcFile, destFile, filtering, forceOverwrite); } catch (IOException ioe) { String msg = "Error copying file: " + srcFile.getAbsolutePath() + " due to " + ioe.getMessage();