]> source.dussan.org Git - aspectj.git/commitdiff
support for <jvmarg>...</jvmarg> when forking (needed by profiling scripts)
authoracolyer <acolyer>
Fri, 20 Jan 2006 12:21:11 +0000 (12:21 +0000)
committeracolyer <acolyer>
Fri, 20 Jan 2006 12:21:11 +0000 (12:21 +0000)
taskdefs/src/org/aspectj/tools/ant/taskdefs/AjcTask.java

index 44de9a31897696d1a28fcaadd04de774f6a45e92..27fc98cbc44db18f0211e6c65703e5040ca027be 100644 (file)
@@ -400,7 +400,10 @@ public class AjcTask extends MatchingTask {
 
     /** true if -XincrementalFile (i.e, setTagFile)*/
     private boolean inIncrementalFileMode; 
-    
+
+    /** used when forking */
+    private CommandlineJava javaCmd = new CommandlineJava();
+
     // also note MatchingTask grabs source files...
     
     public AjcTask() {
@@ -443,6 +446,7 @@ public class AjcTask extends MatchingTask {
         verbose = false;
         xweaveDir = null;
         xdoneSignal = null;
+        javaCmd = new CommandlineJava();
     }
 
     protected void ignore(String ignored) {
@@ -634,6 +638,11 @@ public class AjcTask extends MatchingTask {
     public void setMaxmem(String maxMem) {
         this.maxMem = maxMem;
     }
+    
+    /** support for nested &lt;jvmarg&gt; elements */
+    public Commandline.Argument createJvmarg() {
+       return this.javaCmd.createVmArgument();
+    }
 
        // ----------------
     public void setTagFile(File file) {
@@ -1315,7 +1324,6 @@ public class AjcTask extends MatchingTask {
             this.logger.warning("message holder ignored when forking: "
                 + messageHolder.getClass().getName());
         }
-        CommandlineJava javaCmd = new CommandlineJava();
         javaCmd.setClassname(org.aspectj.tools.ajc.Main.class.getName());
         
         final Path vmClasspath = javaCmd.createClasspath(getProject());