diff --git a/src/main/org/apache/tools/ant/taskdefs/Java.java b/src/main/org/apache/tools/ant/taskdefs/Java.java index f7474aa9b..f3289d40e 100644 --- a/src/main/org/apache/tools/ant/taskdefs/Java.java +++ b/src/main/org/apache/tools/ant/taskdefs/Java.java @@ -243,6 +243,8 @@ public class Java extends Task { Execute exe = new Execute(new LogStreamHandler(this, Project.MSG_INFO, Project.MSG_WARN), null); + + exe.setAntRun(project); if (dir == null) dir = project.getBaseDir(); @@ -269,4 +271,10 @@ public class Java extends Task { run(cmdj); } + /** + * Clear out the arguments to this java task. + */ + public void clearArgs() { + cmdl.clearJavaArgs(); + } } diff --git a/src/main/org/apache/tools/ant/types/Commandline.java b/src/main/org/apache/tools/ant/types/Commandline.java index 0996b33f1..a98f35bfc 100644 --- a/src/main/org/apache/tools/ant/types/Commandline.java +++ b/src/main/org/apache/tools/ant/types/Commandline.java @@ -335,4 +335,11 @@ public class Commandline implements Cloneable { arguments.removeAllElements(); } + /** + * Clear out the arguments but leave the executable in place for another operation. + */ + public void clearArgs() { + arguments.removeAllElements(); + } + } diff --git a/src/main/org/apache/tools/ant/types/CommandlineJava.java b/src/main/org/apache/tools/ant/types/CommandlineJava.java index 6df59af97..3b5e11d2f 100644 --- a/src/main/org/apache/tools/ant/types/CommandlineJava.java +++ b/src/main/org/apache/tools/ant/types/CommandlineJava.java @@ -160,4 +160,11 @@ public class CommandlineJava implements Cloneable { c.vmVersion = vmVersion; return c; } + + /** + * Clear out the java arguments. + */ + public void clearJavaArgs() { + javaCommand.clearArgs(); + } }