Package org.codehaus.mojo.javacc
Class JTBMojo
- java.lang.Object
-
- org.apache.maven.plugin.AbstractMojo
-
- org.codehaus.mojo.javacc.AbstractPreprocessorMojo
-
- org.codehaus.mojo.javacc.JTBMojo
-
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled,org.apache.maven.plugin.Mojo
@Mojo(name="jtb", defaultPhase=GENERATE_SOURCES) public class JTBMojo extends AbstractPreprocessorMojoDeprecated.As of version 2.4, use thejtb-javaccgoal instead.Parses a JTB file and transforms it into source files for an AST and a JavaCC grammar file which automatically builds the AST.Note: JTB requires Java 1.5 or higher. This goal will not work with earlier versions of the JRE.- Since:
- 2.2
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.BooleandescriptiveFieldNamesDeprecated.Setting this option totruecauses JTB to generate field names that reflect the structure of the tree instead of generic names likef0,f1etc.private java.lang.String[]excludesDeprecated.A set of Ant-like exclusion patterns used to prevent certain files from being processed.private java.lang.String[]includesDeprecated.A set of Ant-like inclusion patterns used to select files from the source directory for processing.private java.lang.BooleanjavadocFriendlyCommentsDeprecated.Iftrue, all generated comments will be wrapped in<pre>tags so that they are formatted correctly in API docs.private java.lang.StringnodePackageNameDeprecated.This option specifies the package for the generated AST nodes.private java.lang.StringnodeParentClassDeprecated.The qualified name of a user-defined class from which all AST nodes will inherit.private java.io.FileoutputDirectoryDeprecated.The directory where the output Java files will be located.private java.lang.StringpackageNameDeprecated.This option is short fornodePackageName=<packageName>.syntaxtreeandvisitorPackageName=<packageName>.visitor.private java.lang.BooleanparentPointersDeprecated.Iftrue, all nodes will contain fields for its parent node.private java.lang.BooleanprinterDeprecated.Iftrue, JTB will generate a syntax tree dumping visitor.private java.lang.BooleanschemeDeprecated.Iftrue, JTB will generate the following files to support the Schema programming language: Scheme records representing the grammar. A Scheme tree building visitor. Default value isfalse.private java.io.FilesourceDirectoryDeprecated.The directory where the JavaCC grammar files (*.jtb) are located.private java.lang.BooleanspecialTokensDeprecated.Iftrue, JTB will include JavaCC "special tokens" in the AST.private intstaleMillisDeprecated.The granularity in milliseconds of the last modification date for testing whether a source needs recompilation.private java.lang.BooleansupressErrorCheckingDeprecated.Iftrue, JTB will suppress its semantic error checking.private java.io.FiletimestampDirectoryDeprecated.The directory to store the processed input files for later detection of stale sources.private java.lang.StringvisitorPackageNameDeprecated.This option specifies the package for the generated visitors.
-
Constructor Summary
Constructors Constructor Description JTBMojo()Deprecated.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description protected java.lang.String[]getExcludes()Deprecated.Gets a set of Ant-like exclusion patterns used to unselect files from the source directory for processing.protected java.lang.String[]getIncludes()Deprecated.Gets a set of Ant-like inclusion patterns used to select files from the source directory for processing.private java.lang.StringgetNodePackageName()Deprecated.Gets the effective package name for the AST node files.protected java.io.FilegetOutputDirectory()Deprecated.Gets the absolute path to the directory where the generated Java files for the parser will be stored.protected java.io.FilegetSourceDirectory()Deprecated.Gets the absolute path to the directory where the grammar files are located.protected intgetStaleMillis()Deprecated.Gets the granularity in milliseconds of the last modification date for testing whether a source needs recompilation.protected java.io.FilegetTimestampDirectory()Deprecated.Gets the absolute path to the directory where the processed input files will be stored for later detection of stale sources.private java.lang.StringgetVisitorPackageName()Deprecated.Gets the effective package name for the visitor files.private JTBnewJTB()Deprecated.Creates a new facade to invoke JTB.protected voidprocessGrammar(GrammarInfo grammarInfo)Deprecated.Passes the specified grammar file through the tool.-
Methods inherited from class org.codehaus.mojo.javacc.AbstractPreprocessorMojo
addCompileSourceRoot, createTimestamp, execute
-
-
-
-
Field Detail
-
packageName
@Parameter(property="javacc.packageName") private java.lang.String packageName
Deprecated.This option is short fornodePackageName=<packageName>.syntaxtreeandvisitorPackageName=<packageName>.visitor. Note that this option takes precedence overnodePackageNameandvisitorPackageNameif specified.
-
nodePackageName
@Parameter(property="javacc.nodePackageName") private java.lang.String nodePackageName
Deprecated.This option specifies the package for the generated AST nodes. This value may use a leading asterisk to reference the package of the corresponding parser. For example, if the parser package isorg.apacheand this parameter is set to*.demo, the tree node classes will be located in the packageorg.apache.demo. Default value is*.syntaxtree.
-
visitorPackageName
@Parameter(property="javacc.visitorPackageName") private java.lang.String visitorPackageName
Deprecated.This option specifies the package for the generated visitors. This value may use a leading asterisk to reference the package of the corresponding parser. For example, if the parser package isorg.apacheand this parameter is set to*.demo, the visitor classes will be located in the packageorg.apache.demo. Default value is*.visitor.
-
supressErrorChecking
@Parameter(property="javacc.supressErrorChecking") private java.lang.Boolean supressErrorChecking
Deprecated.Iftrue, JTB will suppress its semantic error checking. Default value isfalse.
-
javadocFriendlyComments
@Parameter(property="javacc.javadocFriendlyComments") private java.lang.Boolean javadocFriendlyComments
Deprecated.Iftrue, all generated comments will be wrapped in<pre>tags so that they are formatted correctly in API docs. Default value isfalse.
-
descriptiveFieldNames
@Parameter(property="javacc.descriptiveFieldNames") private java.lang.Boolean descriptiveFieldNames
Deprecated.Setting this option totruecauses JTB to generate field names that reflect the structure of the tree instead of generic names likef0,f1etc. Default value isfalse.
-
nodeParentClass
@Parameter(property="javacc.nodeParentClass") private java.lang.String nodeParentClass
Deprecated.The qualified name of a user-defined class from which all AST nodes will inherit. By default, AST nodes will inherit from the generated classNode.
-
parentPointers
@Parameter(property="javacc.parentPointers") private java.lang.Boolean parentPointers
Deprecated.Iftrue, all nodes will contain fields for its parent node. Default value isfalse.
-
specialTokens
@Parameter(property="javacc.specialTokens") private java.lang.Boolean specialTokens
Deprecated.Iftrue, JTB will include JavaCC "special tokens" in the AST. Default value isfalse.
-
scheme
@Parameter(property="javacc.scheme") private java.lang.Boolean scheme
Deprecated.Iftrue, JTB will generate the following files to support the Schema programming language:- Scheme records representing the grammar.
- A Scheme tree building visitor.
false.
-
printer
@Parameter(property="javacc.printer") private java.lang.Boolean printer
Deprecated.Iftrue, JTB will generate a syntax tree dumping visitor. Default value isfalse.
-
sourceDirectory
@Parameter(property="javacc.sourceDirectory", defaultValue="${basedir}/src/main/jtb") private java.io.File sourceDirectoryDeprecated.The directory where the JavaCC grammar files (*.jtb) are located. It will be recursively scanned for input files to pass to JTB.
-
outputDirectory
@Parameter(property="javacc.outputDirectory", defaultValue="${project.build.directory}/generated-sources/jtb") private java.io.File outputDirectoryDeprecated.The directory where the output Java files will be located.
-
timestampDirectory
@Parameter(property="javacc.timestampDirectory", defaultValue="${project.build.directory}/generated-sources/jtb-timestamp") private java.io.File timestampDirectoryDeprecated.The directory to store the processed input files for later detection of stale sources.
-
staleMillis
@Parameter(property="javacc.lastModGranularityMs", defaultValue="0") private int staleMillisDeprecated.The granularity in milliseconds of the last modification date for testing whether a source needs recompilation.
-
includes
@Parameter private java.lang.String[] includes
Deprecated.A set of Ant-like inclusion patterns used to select files from the source directory for processing. By default, the patterns**/*.jtband**/*.JTBare used to select grammar files.
-
excludes
@Parameter private java.lang.String[] excludes
Deprecated.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()
Deprecated.Gets the absolute path to the directory where the grammar files are located.- Specified by:
getSourceDirectoryin classAbstractPreprocessorMojo- Returns:
- The absolute path to the directory where the grammar files are located, never
null.
-
getIncludes
protected java.lang.String[] getIncludes()
Deprecated.Gets a set of Ant-like inclusion patterns used to select files from the source directory for processing.- Specified by:
getIncludesin classAbstractPreprocessorMojo- Returns:
- A set of Ant-like inclusion patterns used to select files from the source directory for processing, can
be
nullif all files should be included.
-
getExcludes
protected java.lang.String[] getExcludes()
Deprecated.Gets a set of Ant-like exclusion patterns used to unselect files from the source directory for processing.- Specified by:
getExcludesin classAbstractPreprocessorMojo- Returns:
- A set of Ant-like inclusion patterns used to unselect files from the source directory for processing, can
be
nullif no files should be excluded.
-
getOutputDirectory
protected java.io.File getOutputDirectory()
Deprecated.Gets the absolute path to the directory where the generated Java files for the parser will be stored.- Specified by:
getOutputDirectoryin classAbstractPreprocessorMojo- Returns:
- The absolute path to the directory where the generated Java files for the parser will be stored, never
null.
-
getTimestampDirectory
protected java.io.File getTimestampDirectory()
Deprecated.Gets the absolute path to the directory where the processed input files will be stored for later detection of stale sources.- Specified by:
getTimestampDirectoryin classAbstractPreprocessorMojo- Returns:
- The absolute path to the directory where the processed input files will be stored for later detection of
stale sources, never
null.
-
getStaleMillis
protected int getStaleMillis()
Deprecated.Gets the granularity in milliseconds of the last modification date for testing whether a source needs recompilation.- Specified by:
getStaleMillisin classAbstractPreprocessorMojo- Returns:
- The granularity in milliseconds of the last modification date for testing whether a source needs recompilation.
-
processGrammar
protected void processGrammar(GrammarInfo grammarInfo) throws org.apache.maven.plugin.MojoExecutionException, org.apache.maven.plugin.MojoFailureException
Deprecated.Passes the specified grammar file through the tool.- Specified by:
processGrammarin classAbstractPreprocessorMojo- 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.
-
getNodePackageName
private java.lang.String getNodePackageName()
Deprecated.Gets the effective package name for the AST node files.- Returns:
- The effective package name for the AST node files, never
null.
-
getVisitorPackageName
private java.lang.String getVisitorPackageName()
Deprecated.Gets the effective package name for the visitor files.- Returns:
- The effective package name for the visitor files, never
null.
-
newJTB
private JTB newJTB()
Deprecated.Creates a new facade to invoke JTB. 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 directories and packages on the returned facade.- Returns:
- The facade for the tool invocation, never
null.
-
-