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
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
FieldsModifier and TypeFieldDescriptionprivate String[]
A set of Ant-like exclusion patterns used to prevent certain files from being processed.private String[]
A set of Ant-like inclusion patterns used to select files from the source directory for processing.private File
The directory where the parser files generated by JavaCC will be stored.private String
Deprecated.As of version 2.4 because the plugin extracts the package name from each grammar file.private File
The directory where the JavaCC grammar files (*.jj
) are located.private int
The granularity in milliseconds of the last modification date for testing whether a source needs recompilation.Fields inherited from interface org.apache.maven.plugin.Mojo
ROLE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected File[]
Gets all the output directories to register with the project for compilation.protected String[]
Gets a set of Ant-like exclusion patterns used to unselect files from the source directory for processing.protected String[]
Gets a set of Ant-like inclusion patterns used to select files from the source directory for processing.protected File
Gets the absolute path to the directory where the generated Java files for the parser will be stored.protected String
Gets the package into which the generated parser files should be stored.protected File
Gets the absolute path to the directory where the grammar files are located.protected int
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
Methods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
-
Field Details
-
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
The directory where the JavaCC grammar files (*.jj
) are located. -
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 staleMillisThe granularity in milliseconds of the last modification date for testing whether a source needs recompilation. -
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
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.
-
-
Constructor Details
-
JavaCCMojo
public JavaCCMojo()
-
-
Method Details
-
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
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
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
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
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
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.
-