Package org.codehaus.mojo.javacc
Class JavaCCMojo
- java.lang.Object
-
- org.apache.maven.plugin.AbstractMojo
-
- org.codehaus.mojo.javacc.AbstractJavaCCMojo
-
- org.codehaus.mojo.javacc.JavaCCMojo
-
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled
,org.apache.maven.plugin.Mojo
public class JavaCCMojo extends AbstractJavaCCMojo
Parses a JavaCC grammar file (*.jj
) and transforms it to Java source files. Detailed information about the JavaCC options can be found on the JavaCC website.- Since:
- 2.0
- Version:
- $Id: JavaCCMojo.java 8156 2008-11-26 18:20:19Z bentmann $
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String[]
excludes
A set of Ant-like exclusion patterns used to prevent certain files from being processed.private java.lang.String[]
includes
A set of Ant-like inclusion patterns used to select files from the source directory for processing.private java.io.File
outputDirectory
The directory where the parser files generated by JavaCC will be stored.private java.lang.String
packageName
Deprecated.As of version 2.4 because the plugin extracts the package name from each grammar file.private java.io.File
sourceDirectory
The directory where the JavaCC grammar files (*.jj
) are located.private int
staleMillis
The granularity in milliseconds of the last modification date for testing whether a source needs recompilation.
-
Constructor Summary
Constructors Constructor Description JavaCCMojo()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected java.io.File[]
getCompileSourceRoots()
Gets all the output directories to register with the project for compilation.protected java.lang.String[]
getExcludes()
Gets a set of Ant-like exclusion patterns used to unselect files from the source directory for processing.protected java.lang.String[]
getIncludes()
Gets a set of Ant-like inclusion patterns used to select files from the source directory for processing.protected java.io.File
getOutputDirectory()
Gets the absolute path to the directory where the generated Java files for the parser will be stored.protected java.lang.String
getParserPackage()
Gets the package into which the generated parser files should be stored.protected java.io.File
getSourceDirectory()
Gets the absolute path to the directory where the grammar files are located.protected int
getStaleMillis()
Gets the granularity in milliseconds of the last modification date for testing whether a source needs recompilation.protected void
processGrammar(GrammarInfo grammarInfo)
Passes the specified grammar file through the tool.-
Methods inherited from class org.codehaus.mojo.javacc.AbstractJavaCCMojo
copyGrammarOutput, deleteTempDirectory, execute, getGrammarEncoding, getIsStatic, getJdkVersion, getTempDirectory, isSourceRoot, newJavaCC
-
-
-
-
Field Detail
-
packageName
private java.lang.String packageName
Deprecated.As of version 2.4 because the plugin extracts the package name from each grammar file.Package into which the generated classes will be put. Note that this will also be used to create the directory structure where sources will be generated. Defaults to the package name specified in a grammar file.
-
sourceDirectory
private java.io.File sourceDirectory
The directory where the JavaCC grammar files (*.jj
) are located.
-
outputDirectory
private java.io.File outputDirectory
The directory where the parser files generated by JavaCC will be stored. The directory will be registered as a compile source root of the project such that the generated files will participate in later build phases like compiling and packaging.
-
staleMillis
private int staleMillis
The granularity in milliseconds of the last modification date for testing whether a source needs recompilation.
-
includes
private java.lang.String[] includes
A set of Ant-like inclusion patterns used to select files from the source directory for processing. By default, the patterns**/*.jj
and**/*.JJ
are used to select grammar files.
-
excludes
private java.lang.String[] excludes
A set of Ant-like exclusion patterns used to prevent certain files from being processed. By default, this set is empty such that no files are excluded.
-
-
Method Detail
-
getSourceDirectory
protected java.io.File getSourceDirectory()
Gets the absolute path to the directory where the grammar files are located.- Specified by:
getSourceDirectory
in classAbstractJavaCCMojo
- Returns:
- The absolute path to the directory where the grammar files are located, never
null
.
-
getIncludes
protected java.lang.String[] getIncludes()
Gets a set of Ant-like inclusion patterns used to select files from the source directory for processing.- Specified by:
getIncludes
in classAbstractJavaCCMojo
- 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 java.lang.String[] getExcludes()
Gets a set of Ant-like exclusion patterns used to unselect files from the source directory for processing.- Specified by:
getExcludes
in classAbstractJavaCCMojo
- 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 java.io.File getOutputDirectory()
Gets the absolute path to the directory where the generated Java files for the parser will be stored.- Specified by:
getOutputDirectory
in classAbstractJavaCCMojo
- 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 classAbstractJavaCCMojo
- Returns:
- The granularity in milliseconds of the last modification date for testing whether a source needs recompilation.
-
getCompileSourceRoots
protected java.io.File[] getCompileSourceRoots()
Gets all the output directories to register with the project for compilation.- Specified by:
getCompileSourceRoots
in classAbstractJavaCCMojo
- Returns:
- The compile source roots to register with the project, never
null
.
-
getParserPackage
protected java.lang.String getParserPackage()
Gets the package into which the generated parser files should be stored.- Overrides:
getParserPackage
in classAbstractJavaCCMojo
- Returns:
- The package into which the generated parser files should be stored, can be
null
to use the package declaration from the grammar file.
-
processGrammar
protected void processGrammar(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 classAbstractJavaCCMojo
- Parameters:
grammarInfo
- The grammar info describing the grammar file to process, must not benull
.- 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.
-
-