<?xml version="1.0"?>
<project>
	<modelVersion>4.0.0</modelVersion>
	<groupId>net.java.dev.javacc</groupId>
	<artifactId>javacc</artifactId>
	<packaging>jar</packaging>
	<name>JavaCC</name>
	<version>7.0.4</version>

	<description>JavaCC is a parser/scanner generator for java. </description>
	<url>https://github.com/javacc/javacc</url>
	<issueManagement>
		<system>GitHub</system>
		<url>https://github.com/javacc/javacc/issues</url>
	</issueManagement>
	<inceptionYear>1996</inceptionYear>
	<organization>
		<name>javacc.org</name>
		<url>https://javacc.org</url>
	</organization>
	<scm>
		<connection>scm:git:git@github.com/javacc/javacc.git</connection>
		<url>git@github.com/javacc/javacc.git</url>
		<developerConnection>scm:git:git@github.com/javacc/javacc.git</developerConnection>
	</scm>
	<mailingLists>
		<mailingList>
			<name>Commits</name>
			<archive>https://javacc.org/mailing-list-archive/commits@javacc.java.net/</archive>
		</mailingList>
		<mailingList>
			<name>Users</name>
			<archive>https://javacc.org/mailing-list-archive/users@javacc.java.net/</archive>
		</mailingList>
		<mailingList>
			<name>Developers</name>
			<archive>https://javacc.org/mailing-list-archive/dev@javacc.java.net/</archive>
		</mailingList>
		<mailingList>
			<name>Issues</name>
			<archive>https://javacc.dev.java.net/servlets/SummarizeList?listName=issues</archive>
		</mailingList>
	</mailingLists>
	<developers>
		<developer>
			<name>Sreenivasa Viswanadha</name>
			<id>sreeni</id>
			<email>sreeni At dev.java.net</email>
			<roles>
				<role>Owner</role>
			</roles>
			<timezone>0</timezone>
			<organization>javacc.org</organization>
			<organizationUrl>https://javacc.org</organizationUrl>
		</developer>

		<developer>
			<name>Chris Ainsley</name>
			<id>ainsleyc</id>
			<email>ainsleyc At dev.java.net</email>
			<roles>
				<role>Developer</role>
			</roles>
			<timezone>0</timezone>
			<organization>java.net</organization>
			<organizationUrl>http://www.java.net/</organizationUrl>
		</developer>

		<developer>
			<name>Tim Pizey</name>
			<id>timp</id>
			<email>timp AT paneris.org</email>
			<roles>
				<role>Maven maven</role>
				<role>Developer</role>
			</roles>
			<timezone>0</timezone>
			<url>http://paneris.org/~timp</url>
			<organization>Context Computing</organization>
			<organizationUrl>http://www.context-computing.co.uk/</organizationUrl>
		</developer>

		<developer>
			<name>Francis ANDRE</name>
			<id>zosrothko</id>
			<email>zosrothko AT orange.fr</email>
			<roles>
				<role>Developer</role>
			</roles>
			<timezone>0</timezone>
			<url>http://www.kampbell.net</url>
			<organization>Kampbell</organization>
			<organizationUrl>https://github.com/Kampbell/</organizationUrl>
		</developer>
	</developers>
	<licenses>
		<license>
			<name>Berkeley Software Distribution (BSD) License</name>
			<url>http://www.opensource.org/licenses/bsd-license.html</url>
			<distribution>repo</distribution>
		</license>
	</licenses>


	<build>
		<sourceDirectory>src</sourceDirectory>
		<testSourceDirectory>src</testSourceDirectory>

		<!-- Uncomment to include grammar sources in jar -->
		<!--resources> <resource> <directory>src</directory> <includes> <include>**/*.jj</include> 
			<include>**/*.jjt</include> </includes> </resource> </resources -->

		<!-- NOTE sourceDirectory paths currently configured for Windows due to 
			http://jira.codehaus.org/browse/MJAVACC-29 -->
		<plugins>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>javacc-maven-plugin</artifactId>
				<executions>
					<execution>
						<id>jcc</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>javacc</goal>
						</goals>
						<configuration>
							<packageName>org.javacc.parser</packageName>
							<sourceDirectory>src/main/java/org/javacc/parser</sourceDirectory>
						</configuration>
					</execution>
					<execution>
						<id>jjt</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>jjtree</goal>
						</goals>
						<configuration>
							<excludes>
								<exclude>**/parser/**</exclude>
							</excludes>
							<packageName>org.javacc.jjtree</packageName>
							<sourceDirectory>src/main/java/org/javacc/jjtree</sourceDirectory>
						</configuration>
					</execution>
					<execution>
						<id>jjt-jcc</id>
						<phase>generate-sources</phase>
						<goals>
							<goal>javacc</goal>
						</goals>
						<configuration>
							<packageName>org.javacc.jjtree</packageName>
							<sourceDirectory>target/generated-sources/jjtree</sourceDirectory>
						</configuration>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>5</source>
					<target>5</target>
					<excludes>
						<exclude>**/*Test.java</exclude>
					</excludes>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-plugin</artifactId>
				<configuration>
					<redirectTestOutputToFile>true</redirectTestOutputToFile>
					<forkMode>once</forkMode>
					<includes>
						<include>**/*Test.java</include>
					</includes>
					<excludes>
					</excludes>
				</configuration>
			</plugin>
			<plugin>
				<artifactId>maven-antrun-plugin</artifactId>
				<executions>
					<execution>
						<id>overwrite</id>
						<phase>process-sources</phase>
						<configuration>
							<tasks>
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTBNF.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTBNFAction.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTBNFDeclaration.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTBNFNodeScope.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTCompilationUnit.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTExpansionNodeScope.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTGrammar.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTJavacode.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTJavacodeBody.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTLHS.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTNodeDescriptor.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTNodeDescriptorExpression.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTOptionBinding.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTOptions.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/ASTProduction.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/IO.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/JJTree.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/JJTreeGlobals.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/JJTreeIOException.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/JJTreeOptions.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/JJTreeOptionsTest.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/JJTreeState.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/Main.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/NodeFiles.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/NodeScope.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/SimpleNode.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/Token.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/org/javacc/jjtree/TokenUtils.java" />

								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTBNF.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTBNFAction.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTBNFDeclaration.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTBNFNodeScope.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTCompilationUnit.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTExpansionNodeScope.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTGrammar.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTJavacode.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTJavacodeBody.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTLHS.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTNodeDescriptor.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTNodeDescriptorExpression.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTOptionBinding.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTOptions.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/ASTProduction.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/IO.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/JJTree.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/JJTreeGlobals.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/JJTreeIOException.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/JJTreeOptions.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/JJTreeOptionsTest.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/JJTreeState.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/Main.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/NodeFiles.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/NodeScope.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/SimpleNode.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/Token.java" />
								<delete
									file="${project.build.directory}/generated-sources/jjtree/TokenUtils.java" />

								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/jjtree/Token.java" />


								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/Action.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/BNFProduction.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/CharacterRange.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/Choice.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/Container.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/Expansion.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/ExpansionTest.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/ExpansionTreeWalker.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/JavaCCErrors.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/JavaCCGlobals.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/JavaCCParserInternals.java" />

								<!-- JavaCCParser.java JavaCCParserConstants.java JavaCCParserTokenManager.java 
									JavaCharStream.java ParseException.java -->
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/JavaCodeProduction.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/JavaFiles.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/LexGen.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/Lookahead.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/LookaheadCalc.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/LookaheadWalk.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/Main.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/MatchInfo.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/MetaParseException.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/Nfa.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/NfaState.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/NonTerminal.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/NormalProduction.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/OneOrMore.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/Options.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/OptionsTest.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/OtherFilesGen.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/ParseEngine.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/ParseGen.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/RCharacterList.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/RChoice.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/REndOfFile.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/RJustName.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/ROneOrMore.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/RRepetitionRange.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/RSequence.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/RStringLiteral.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/RZeroOrMore.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/RZeroOrOne.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/RegExprSpec.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/RegularExpression.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/Semanticize.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/Sequence.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/SingleCharacter.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/Token.java" />
								<!-- <delete file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/TokenMgrError.java" 
									/> -->
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/TokenProduction.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/TreeWalkerOp.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/TryBlock.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/ZeroOrMore.java" />
								<delete
									file="${project.build.directory}/generated-sources/javacc/org/javacc/parser/ZeroOrOne.java" />

							</tasks>
						</configuration>
						<goals>
							<goal>run</goal>
						</goals>
					</execution>
					<execution>
						<id>tests</id>
						<phase>test</phase>
						<configuration>
							<tasks>

								<!-- Place any ant task here. You can add anything you can add between 
									<target> and </target> in a build.xml. -->



								<mkdir dir="test.tmp" />

								<!-- <echo /> <java failonerror="true" fork="true" classname="javacc" 
									classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/CORBA-IDL 
									examples/CORBA-IDL/IDL.jj" /> </java> <javac fork="true" srcdir="test.tmp/CORBA-IDL" 
									/> <copy todir="test.tmp/CORBA-IDL/"> <fileset dir="examples/CORBA-IDL"> 
									<include name="*.idl" /> </fileset> </copy> <java failonerror="true" fork="true" 
									classname="IDLParser" classpath="test.tmp/CORBA-IDL/" outputproperty="test.corba.out"> 
									<arg line="test.tmp/CORBA-IDL/Hello.idl" /> </java> <echo>${test.corba.out}</echo> 
									<fail message="CORBA failed"> <condition> <not> <contains string="${test.corba.out}" 
									substring="IDL file parsed successfully" /> </not> </condition> </fail> <echo 
									/> <copy todir="test.tmp/GUIParsing/ParserVersion"> <fileset dir="examples/GUIParsing/ParserVersion"> 
									<include name="*.java" /> </fileset> </copy> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/GUIParsing/ParserVersion 
									examples/GUIParsing/ParserVersion/CalcInput.jj" /> </java> <javac fork="true" 
									srcdir="test.tmp/GUIParsing/ParserVersion" /> <echo /> <copy todir="test.tmp/GUIParsing/TokenMgrVersion"> 
									<fileset dir="examples/GUIParsing/TokenMgrVersion"> <include name="*.java" 
									/> </fileset> </copy> <java failonerror="true" fork="true" classname="javacc" 
									classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/GUIParsing/TokenMgrVersion 
									examples/GUIParsing/TokenMgrVersion/CalcInput.jj" /> </java> <javac fork="true" 
									srcdir="test.tmp/GUIParsing/TokenMgrVersion" /> <echo /> <copy todir="test.tmp/Interpreter"> 
									<fileset dir="examples/Interpreter"> <include name="*.java" /> </fileset> 
									</copy> <java failonerror="true" fork="true" classname="jjtree" classpath="target/classes"> 
									<arg line="-OUTPUT_DIRECTORY=test.tmp/Interpreter examples/Interpreter/SPL.jjt" 
									/> </java> <java failonerror="true" fork="true" classname="javacc" classpath="target/classes"> 
									<arg line="-OUTPUT_DIRECTORY=test.tmp/Interpreter test.tmp/Interpreter/SPL.jj" 
									/> </java> <javac fork="true" srcdir="test.tmp/Interpreter" /> <copy todir="test.tmp/Interpreter/"> 
									<fileset dir="examples/Interpreter/"> <include name="*.spl" /> </fileset> 
									</copy> <java failonerror="true" fork="true" classname="SPL" classpath="test.tmp/Interpreter/" 
									inputstring="3" outputproperty="spl.out1" > <arg line="test.tmp/Interpreter/fact.spl" 
									/> </java> <echo>${spl.out1}</echo> <fail message="SPL fact parse failed"> 
									<condition> <not> <contains string="${spl.out1}" substring="Value of fact 
									: 6" /> </not> </condition> </fail> <java failonerror="true" fork="true" 
									classname="SPL" classpath="test.tmp/Interpreter/" inputstring="3" outputproperty="spl.out2" 
									> <arg line="test.tmp/Interpreter/odd.spl" /> </java> <echo>${spl.out2}</echo> 
									<fail message="SPL odd parse failed"> <condition> <not> <contains string="${spl.out2}" 
									substring="Value of odd : true" /> </not> </condition> </fail> <java failonerror="true" 
									fork="true" classname="SPL" classpath="test.tmp/Interpreter/" inputstring="9" 
									outputproperty="spl.out3" > <arg line="test.tmp/Interpreter/sqrt.spl" /> 
									</java> <echo>${spl.out3}</echo> <fail message="SPL sqrt parse failed"> <condition> 
									<not> <contains string="${spl.out3}" substring="Value of sqrt : 3" /> </not> 
									</condition> </fail> <echo /> <java failonerror="true" fork="true" classname="jjtree" 
									classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/JJTreeExamples.eg1 
									examples/JJTreeExamples/eg1.jjt" /> </java> <java fork="true" classname="javacc" 
									classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/JJTreeExamples.eg1 
									test.tmp/JJTreeExamples.eg1/eg1.jj" /> </java> <javac fork="true" srcdir="test.tmp/JJTreeExamples.eg1" 
									/> <java failonerror="true" fork="true" classname="Eg1" classpath="test.tmp/JJTreeExamples.eg1/" 
									inputstring="(a + b) * (c + 1);" outputproperty="jjtree.eg1.out" > </java> 
									<echo>${jjtree.eg1.out}</echo> <fail message="JJTree eg1 parse failed"> <condition> 
									<not> <contains string="${jjtree.eg1.out}" substring="Thank you." /> </not> 
									</condition> </fail> <echo /> <copy todir="test.tmp/JJTreeExamples.eg2"> 
									<fileset dir="examples/JJTreeExamples"> <include name="*.java" /> <exclude 
									name="Eg4DumpVisitor.java" /> <exclude name="ASTMyOtherID.java" /> </fileset> 
									</copy> <java failonerror="true" fork="true" classname="jjtree" classpath="target/classes"> 
									<arg line="-OUTPUT_DIRECTORY=test.tmp/JJTreeExamples.eg2 examples/JJTreeExamples/eg2.jjt" 
									/> </java> <java failonerror="true" fork="true" classname="javacc" classpath="target/classes"> 
									<arg line="-OUTPUT_DIRECTORY=test.tmp/JJTreeExamples.eg2 test.tmp/JJTreeExamples.eg2/eg2.jj" 
									/> </java> <javac fork="true" srcdir="test.tmp/JJTreeExamples.eg2" /> <java 
									failonerror="true" fork="true" classname="Eg2" classpath="test.tmp/JJTreeExamples.eg2/" 
									inputstring="(a + b) * (c + 1);" outputproperty="jjtree.eg2.out" > </java> 
									<echo>${jjtree.eg2.out}</echo> <fail message="JJTree eg2 parse failed"> <condition> 
									<not> <contains string="${jjtree.eg2.out}" substring="Thank you." /> </not> 
									</condition> </fail> <echo /> <copy todir="test.tmp/JJTreeExamples.eg3"> 
									<fileset dir="examples/JJTreeExamples"> <include name="*.java" /> <exclude 
									name="Eg4DumpVisitor.java" /> <exclude name="ASTMyOtherID.java" /> </fileset> 
									</copy> <java failonerror="true" fork="true" classname="jjtree" classpath="target/classes"> 
									<arg line="-OUTPUT_DIRECTORY=test.tmp/JJTreeExamples.eg3 examples/JJTreeExamples/eg3.jjt" 
									/> </java> <java failonerror="true" fork="true" classname="javacc" classpath="target/classes"> 
									<arg line="-OUTPUT_DIRECTORY=test.tmp/JJTreeExamples.eg3 test.tmp/JJTreeExamples.eg3/eg3.jj" 
									/> </java> <javac fork="true" srcdir="test.tmp/JJTreeExamples.eg3" /> <java 
									failonerror="true" fork="true" classname="Eg3" classpath="test.tmp/JJTreeExamples.eg3/" 
									inputstring="(a + b) * (c + 1);" outputproperty="jjtree.eg3.out" > </java> 
									<echo>${jjtree.eg3.out}</echo> <fail message="JJTree eg3 parse failed"> <condition> 
									<not> <contains string="${jjtree.eg3.out}" substring="Thank you." /> </not> 
									</condition> </fail> <echo /> <copy todir="test.tmp/JJTreeExamples.eg4"> 
									<fileset dir="examples/JJTreeExamples"> <include name="*.java" /> </fileset> 
									</copy> <java failonerror="true" fork="true" classname="jjtree" classpath="target/classes"> 
									<arg line="-OUTPUT_DIRECTORY=test.tmp/JJTreeExamples.eg4 examples/JJTreeExamples/eg4.jjt" 
									/> </java> <java failonerror="true" fork="true" classname="javacc" classpath="target/classes"> 
									<arg line="-OUTPUT_DIRECTORY=test.tmp/JJTreeExamples.eg4 test.tmp/JJTreeExamples.eg4/eg4.jj" 
									/> </java> <javac fork="true" srcdir="test.tmp/JJTreeExamples.eg4" /> <java 
									failonerror="true" fork="true" classname="Eg4" classpath="test.tmp/JJTreeExamples.eg4/" 
									inputstring="(a + b) * (c + 1);" outputproperty="jjtree.eg4.out" > </java> 
									<echo>${jjtree.eg4.out}</echo> <fail message="JJTree eg4 parse failed"> <condition> 
									<not> <contains string="${jjtree.eg4.out}" substring="Thank you." /> </not> 
									</condition> </fail> -->
								<echo />

								<java failonerror="true" fork="true" classname="javacc"
									classpath="target/classes">
									<arg
										line="-OUTPUT_DIRECTORY=test.tmp/JavaCCGrammar examples/JavaCCGrammar/JavaCC.jj" />
								</java>

								<javac fork="true" srcdir="test.tmp/JavaCCGrammar" />

								<!-- TODO, test cases for JavaGrammars -->
								<!-- <echo /> <java failonerror="true" fork="true" classname="javacc" 
									classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Lookahead.eg1 
									examples/Lookahead/Example1.jj" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Lookahead.eg2 
									examples/Lookahead/Example2.jj" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Lookahead.eg3 
									examples/Lookahead/Example3.jj" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Lookahead.eg4 
									examples/Lookahead/Example4.jj" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Lookahead.eg5 
									examples/Lookahead/Example5.jj" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Lookahead.eg6 
									examples/Lookahead/Example6.jj" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Lookahead.eg7 
									examples/Lookahead/Example7.jj" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Lookahead.eg8 
									examples/Lookahead/Example8.jj" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Lookahead.eg9 
									examples/Lookahead/Example9.jj" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Lookahead.eg10 
									examples/Lookahead/Example10.jj" /> </java> <echo /> <java failonerror="true" 
									fork="true" classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/MailProcessing 
									examples/MailProcessing/Digest.jj" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/MailProcessing 
									examples/MailProcessing/Faq.jj" /> </java> <javac fork="true" srcdir="test.tmp/MailProcessing" 
									/> <echo /> <copy todir="test.tmp/Obfuscator"> <fileset dir="examples/Obfuscator"> 
									<include name="*.java" /> </fileset> </copy> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Obfuscator 
									examples/Obfuscator/Java1.1.jj" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Obfuscator 
									examples/Obfuscator/IdsFile.jj" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Obfuscator 
									examples/Obfuscator/MapFile.jj" /> </java> <javac fork="true" srcdir="test.tmp/Obfuscator" 
									/> -->
								<!-- TODO, test cases for SimpleExamples -->
								<!-- <echo /> <copy todir="test.tmp/Transformer"> <fileset dir="examples/Transformer"> 
									<include name="*.java" /> </fileset> </copy> <java failonerror="true" fork="true" 
									classname="jjtree" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Transformer 
									examples/Transformer/ToyJava.jjt" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/Transformer 
									test.tmp/Transformer/ToyJava.jj" /> </java> <javac fork="true" srcdir="test.tmp/Transformer" 
									/> <echo /> <copy todir="test.tmp/VTransformer"> <fileset dir="examples/VTransformer"> 
									<include name="*.java" /> </fileset> </copy> <java failonerror="true" fork="true" 
									classname="jjtree" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/VTransformer 
									examples/VTransformer/Java1.1.jjt" /> </java> <java failonerror="true" fork="true" 
									classname="javacc" classpath="target/classes"> <arg line="-OUTPUT_DIRECTORY=test.tmp/VTransformer 
									test.tmp/VTransformer/Java1.1.jj" /> </java> <javac fork="true" srcdir="test.tmp/VTransformer" 
									/> -->

							</tasks>
						</configuration>
						<goals>
							<goal>run</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>cobertura-maven-plugin</artifactId>
				<version>2.0</version>
				<executions>
					<execution>
						<goals>
							<goal>clean</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
	<reporting>
		<plugins>
			<plugin>
				<groupId>net.java.dev.javacc</groupId>
				<artifactId>javacc-maven-plugin</artifactId>
				<configuration>
					<sourceDirectory>src/main/java/org/javacc/parser</sourceDirectory>
					<packageName>org.javacc.parser</packageName>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-pmd-plugin</artifactId>
				<configuration>
					<rulesets>
						<ruleset>/rulesets/basic.xml</ruleset>
					</rulesets>
					<minmemory>128m</minmemory>
					<maxmemory>256m</maxmemory>
					<format>xml</format>
					<linkXref>true</linkXref>
					<sourceEncoding>utf-8</sourceEncoding>
					<minimumTokens>100</minimumTokens>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>jdepend-maven-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>taglist-maven-plugin</artifactId>
				<configuration>
					<tags>
						<tag>@todo</tag>
						<tag>FIXME</tag>
						<tag>@deprecated</tag>
						<tag>HACK</tag>
						<tag>NOTE</tag>
					</tags>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-jxr-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-javadoc-plugin</artifactId>
				<configuration>
					<minmemory>128m</minmemory>
					<maxmemory>512m</maxmemory>
				</configuration>
			</plugin>
			<plugin>
				<groupId>org.codehaus.mojo</groupId>
				<artifactId>cobertura-maven-plugin</artifactId>
				<version>2.0</version>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-surefire-report-plugin</artifactId>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-site-plugin</artifactId>
				<configuration>
					<siteDirectory>www</siteDirectory>
					<locales>en</locales>
				</configuration>
			</plugin>
		</plugins>
	</reporting>
	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>3.8.1</version>
			<scope>compile</scope>
		</dependency>
	</dependencies>
	<repositories>
		<repository>
			<id>maven2-repository.dev.java.net</id>
			<name>Java.net Repository for Maven</name>
			<url>https://maven2-repository.dev.java.net/nonav/repository</url>
			<layout>default</layout>
		</repository>
	</repositories>
</project>

