Browse Source

Move runCommand into this class

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@270574 13f79535-47bb-0310-9956-ffa450edef68
master
Peter Donald 24 years ago
parent
commit
68c0830423
2 changed files with 52 additions and 6 deletions
  1. +26
    -3
      proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/javacc/JavaCC.java
  2. +26
    -3
      proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/javacc/JavaCC.java

+ 26
- 3
proposal/myrmidon/src/main/org/apache/tools/ant/taskdefs/optional/javacc/JavaCC.java View File

@@ -8,12 +8,14 @@
package org.apache.tools.ant.taskdefs.optional.javacc; package org.apache.tools.ant.taskdefs.optional.javacc;


import java.io.File; import java.io.File;
import java.io.IOException;
import java.util.Enumeration; import java.util.Enumeration;
import java.util.Hashtable; import java.util.Hashtable;
import org.apache.myrmidon.api.TaskException; import org.apache.myrmidon.api.TaskException;
import org.apache.tools.ant.Task; import org.apache.tools.ant.Task;
import org.apache.tools.ant.taskdefs.exec.Execute;
import org.apache.tools.ant.taskdefs.exec.Execute2;
import org.apache.tools.ant.types.Argument; import org.apache.tools.ant.types.Argument;
import org.apache.tools.ant.types.Commandline;
import org.apache.tools.ant.types.CommandlineJava; import org.apache.tools.ant.types.CommandlineJava;
import org.apache.tools.ant.types.Path; import org.apache.tools.ant.types.Path;


@@ -224,7 +226,7 @@ public class JavaCC extends Task
{ {
throw new TaskException( "Javacchome not set." ); throw new TaskException( "Javacchome not set." );
} }
final Path classpath = cmdl.createClasspath( getProject() );
final Path classpath = cmdl.createClasspath();
classpath.createPathElement().setPath( javaccHome.getAbsolutePath() + classpath.createPathElement().setPath( javaccHome.getAbsolutePath() +
"/JavaCC.zip" ); "/JavaCC.zip" );
classpath.addJavaRuntime(); classpath.addJavaRuntime();
@@ -233,7 +235,28 @@ public class JavaCC extends Task
arg.setValue( "-mx140M" ); arg.setValue( "-mx140M" );
arg.setValue( "-Dinstall.root=" + javaccHome.getAbsolutePath() ); arg.setValue( "-Dinstall.root=" + javaccHome.getAbsolutePath() );


Execute.runCommand( this, cmdl.getCommandline() );
runCommand( cmdl.getCommandline() );
}

private void runCommand( final String[] cmdline )
throws TaskException
{
try
{
getLogger().debug( Commandline.toString( cmdline ) );
final Execute2 exe = new Execute2();
setupLogger( exe );
exe.setCommandline( cmdline );
int retval = exe.execute();
if( retval != 0 )
{
throw new TaskException( cmdline[ 0 ] + " failed with return code " + retval );
}
}
catch( final IOException ioe )
{
throw new TaskException( "Could not launch " + cmdline[ 0 ] + ": " + ioe );
}
} }


/** /**


+ 26
- 3
proposal/myrmidon/src/todo/org/apache/tools/ant/taskdefs/optional/javacc/JavaCC.java View File

@@ -8,12 +8,14 @@
package org.apache.tools.ant.taskdefs.optional.javacc; package org.apache.tools.ant.taskdefs.optional.javacc;


import java.io.File; import java.io.File;
import java.io.IOException;
import java.util.Enumeration; import java.util.Enumeration;
import java.util.Hashtable; import java.util.Hashtable;
import org.apache.myrmidon.api.TaskException; import org.apache.myrmidon.api.TaskException;
import org.apache.tools.ant.Task; import org.apache.tools.ant.Task;
import org.apache.tools.ant.taskdefs.exec.Execute;
import org.apache.tools.ant.taskdefs.exec.Execute2;
import org.apache.tools.ant.types.Argument; import org.apache.tools.ant.types.Argument;
import org.apache.tools.ant.types.Commandline;
import org.apache.tools.ant.types.CommandlineJava; import org.apache.tools.ant.types.CommandlineJava;
import org.apache.tools.ant.types.Path; import org.apache.tools.ant.types.Path;


@@ -224,7 +226,7 @@ public class JavaCC extends Task
{ {
throw new TaskException( "Javacchome not set." ); throw new TaskException( "Javacchome not set." );
} }
final Path classpath = cmdl.createClasspath( getProject() );
final Path classpath = cmdl.createClasspath();
classpath.createPathElement().setPath( javaccHome.getAbsolutePath() + classpath.createPathElement().setPath( javaccHome.getAbsolutePath() +
"/JavaCC.zip" ); "/JavaCC.zip" );
classpath.addJavaRuntime(); classpath.addJavaRuntime();
@@ -233,7 +235,28 @@ public class JavaCC extends Task
arg.setValue( "-mx140M" ); arg.setValue( "-mx140M" );
arg.setValue( "-Dinstall.root=" + javaccHome.getAbsolutePath() ); arg.setValue( "-Dinstall.root=" + javaccHome.getAbsolutePath() );


Execute.runCommand( this, cmdl.getCommandline() );
runCommand( cmdl.getCommandline() );
}

private void runCommand( final String[] cmdline )
throws TaskException
{
try
{
getLogger().debug( Commandline.toString( cmdline ) );
final Execute2 exe = new Execute2();
setupLogger( exe );
exe.setCommandline( cmdline );
int retval = exe.execute();
if( retval != 0 )
{
throw new TaskException( cmdline[ 0 ] + " failed with return code " + retval );
}
}
catch( final IOException ioe )
{
throw new TaskException( "Could not launch " + cmdline[ 0 ] + ": " + ioe );
}
} }


/** /**


Loading…
Cancel
Save