Class JJTreeJavaCCMojo

java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.codehaus.mojo.javacc.AbstractJavaCCMojo
org.codehaus.mojo.javacc.JJTreeJavaCCMojo
All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo

@Mojo(name="jjtree-javacc", defaultPhase=GENERATE_SOURCES, threadSafe=true) public class JJTreeJavaCCMojo extends AbstractJavaCCMojo
Preprocesses decorated grammar files (*.jjt) with JJTree and passes the output to JavaCC in order to finally generate a parser with parse tree actions.
Since:
2.4
Author:
Benjamin Bentmann
  • Constructor Details

    • JJTreeJavaCCMojo

      public JJTreeJavaCCMojo()
  • Method Details

    • getSourceDirectory

      protected File getSourceDirectory()
      Gets the absolute path to the directory where the grammar files are located.
      Specified by:
      getSourceDirectory in class AbstractJavaCCMojo
      Returns:
      The absolute path to the directory where the grammar files are located, never null.
    • getIncludes

      protected String[] getIncludes()
      Gets a set of Ant-like inclusion patterns used to select files from the source directory for processing.
      Specified by:
      getIncludes in class AbstractJavaCCMojo
      Returns:
      A set of Ant-like inclusion patterns used to select files from the source directory for processing, can be null if all files should be included.
    • getExcludes

      protected String[] getExcludes()
      Gets a set of Ant-like exclusion patterns used to unselect files from the source directory for processing.
      Specified by:
      getExcludes in class AbstractJavaCCMojo
      Returns:
      A set of Ant-like inclusion patterns used to unselect files from the source directory for processing, can be null if no files should be excluded.
    • getOutputDirectory

      protected File getOutputDirectory()
      Gets the absolute path to the directory where the generated Java files for the parser will be stored.
      Specified by:
      getOutputDirectory in class AbstractJavaCCMojo
      Returns:
      The absolute path to the directory where the generated Java files for the parser will be stored, never null.
    • getStaleMillis

      protected int getStaleMillis()
      Gets the granularity in milliseconds of the last modification date for testing whether a source needs recompilation.
      Specified by:
      getStaleMillis in class AbstractJavaCCMojo
      Returns:
      The granularity in milliseconds of the last modification date for testiintng whether a source needs recompilation.
    • getCompileSourceRoots

      protected File[] getCompileSourceRoots()
      Gets all the output directories to register with the project for compilation.
      Specified by:
      getCompileSourceRoots in class AbstractJavaCCMojo
      Returns:
      The compile source roots to register with the project, never null.
    • processGrammar

      protected void processGrammar(org.codehaus.mojo.javacc.GrammarInfo grammarInfo) throws org.apache.maven.plugin.MojoExecutionException, org.apache.maven.plugin.MojoFailureException
      Passes the specified grammar file through the tool.
      Specified by:
      processGrammar in class AbstractJavaCCMojo
      Parameters:
      grammarInfo - The grammar info describing the grammar file to process, must not be null.
      Throws:
      org.apache.maven.plugin.MojoExecutionException - If the invocation of the tool failed.
      org.apache.maven.plugin.MojoFailureException - If the tool reported a non-zero exit code.
    • newJJTree

      protected org.codehaus.mojo.javacc.JJTree newJJTree()
      Creates a new facade to invoke JJTree. Most options for the invocation are derived from the current values of the corresponding mojo parameters. The caller is responsible to set the input file, output directory and package on the returned facade.
      Returns:
      The facade for the tool invocation, never null.