Index: /trunk/.settings/sf.eclipse.javacc.prefs
===================================================================
--- /trunk/.settings/sf.eclipse.javacc.prefs	(revision 16167)
+++ /trunk/.settings/sf.eclipse.javacc.prefs	(revision 16168)
@@ -8,5 +8,5 @@
 KEEP_DEL_FILES_IN_HISTORY=false
 MARK_GEN_FILES_AS_DERIVED=true
-RUNTIME_JJJAR=${project_loc}/tools/javacc.jar
+RUNTIME_JJJAR=${project_loc}/lib/tools/javacc-jar.jar
 RUNTIME_JTBJAR=${eclipse_home}/plugins/sf.eclipse.javacc_1.5.27/jtb-1.4.7.jar
 RUNTIME_JVMOPTIONS=
Index: /trunk/README
===================================================================
--- /trunk/README	(revision 16167)
+++ /trunk/README	(revision 16168)
@@ -161,6 +161,4 @@
     - jacocoant.jar         used to include coverage data into JUnit test reports
     - japicc/               used to generate a compatibility report between optimized jar and normal one
-    - javacc.jar            used in the build process to generate some .java files from a javacc source file
-                            (src/org/openstreetmap/josm/gui/mappaint/mapcss/MapCSSParser.jj)
     - proguard.jar          optimize final binary jar - see build.xml (not used in production so far)
     - spotbugs/             libs and config files for spotbugs (automatically detects common bugs and potential
Index: /trunk/build.xml
===================================================================
--- /trunk/build.xml	(revision 16167)
+++ /trunk/build.xml	(revision 16168)
@@ -20,4 +20,5 @@
         <property name="lib.dir"   location="${base.dir}/lib"/>
         <property name="tools.dir" location="${base.dir}/tools"/>
+        <property name="tools.ivy" location="${tools.dir}/ivy.xml"/>
         <taskdef resource="org/apache/ivy/ant/antlib.xml" uri="antlib:org.apache.ivy.ant" classpath="${tools.dir}/ivy/ivy.jar"/>
     </target>
@@ -276,7 +277,8 @@
     </target>
     <target name="javacc" depends="init" unless="javacc.notRequired">
+        <ivy:cachepath file="${tools.ivy}" pathid="javacc.classpath" conf="javacc"/>
         <mkdir dir="${mapcss.dir}/parsergen"/>
         <java classname="javacc" fork="true" failonerror="true">
-            <classpath path="${javacc.home}/javacc.jar"/>
+            <classpath refid="javacc.classpath"/>
             <arg value="-DEBUG_PARSER=false"/>
             <arg value="-DEBUG_TOKEN_MANAGER=false"/>
@@ -366,5 +368,5 @@
             <!-- Undocumented argument to ignore "Sun internal proprietary API" warning, see http://stackoverflow.com/a/13862308/2257172 -->
             <compilerarg value="-XDignore.symbol.file"/>
-            <compilerarg value="-Xplugin:ErrorProne -Xep:ReferenceEquality:OFF -Xep:ImmutableEnumChecker:OFF -Xep:FutureReturnValueIgnored:OFF -Xep:FloatingPointLiteralPrecision:OFF -Xep:ShortCircuitBoolean:OFF -Xep:StringSplitter:OFF -Xep:JdkObsolete:OFF -Xep:UnnecessaryParentheses:OFF -Xep:EqualsGetClass:OFF -Xep:ThreadPriorityCheck:OFF -Xep:UndefinedEquals:OFF -Xep:MixedMutabilityReturnType:OFF -Xep:OverrideThrowableToString:OFF -Xep:JavaTimeDefaultTimeZone:OFF -Xep:UnusedVariable:OFF -Xep:EqualsUsingHashCode:OFF -Xep:BadImport:OFF -Xep:UnnecessaryLambda:OFF -Xep:AnnotateFormatMethod:OFF -Xep:MutablePublicArray:OFF"/>
+            <compilerarg value="-Xplugin:ErrorProne -XepExcludedPaths:.*/parsergen/.* -Xep:ReferenceEquality:OFF -Xep:ImmutableEnumChecker:OFF -Xep:FutureReturnValueIgnored:OFF -Xep:FloatingPointLiteralPrecision:OFF -Xep:ShortCircuitBoolean:OFF -Xep:StringSplitter:OFF -Xep:JdkObsolete:OFF -Xep:UnnecessaryParentheses:OFF -Xep:EqualsGetClass:OFF -Xep:ThreadPriorityCheck:OFF -Xep:UndefinedEquals:OFF -Xep:MixedMutabilityReturnType:OFF -Xep:OverrideThrowableToString:OFF -Xep:JavaTimeDefaultTimeZone:OFF -Xep:UnusedVariable:OFF -Xep:EqualsUsingHashCode:OFF -Xep:BadImport:OFF -Xep:UnnecessaryLambda:OFF -Xep:AnnotateFormatMethod:OFF -Xep:MutablePublicArray:OFF"/>
             <compilerarg line="-Xmaxwarns 1000"/>
             <classpath>
@@ -948,5 +950,5 @@
 
     <target name="spotbugs" depends="dist">
-        <ivy:cachepath file="${tools.dir}/ivy.xml" pathid="spotbugs.classpath" conf="spotbugs"/>
+        <ivy:cachepath file="${tools.ivy}" pathid="spotbugs.classpath" conf="spotbugs"/>
         <taskdef name="spotbugs" classname="edu.umd.cs.findbugs.anttask.FindBugsTask" classpath="${toString:spotbugs.classpath}"/>
         <spotbugs output="xml"
@@ -964,5 +966,5 @@
 
     <target name="pmd" depends="init-properties">
-        <ivy:cachepath file="${tools.dir}/ivy.xml" pathid="pmd.classpath" conf="pmd"/>
+        <ivy:cachepath file="${tools.ivy}" pathid="pmd.classpath" conf="pmd"/>
         <taskdef name="pmd" classname="net.sourceforge.pmd.ant.PMDTask" classpath="${toString:pmd.classpath}"/>
         <pmd shortFilenames="true" cacheLocation="${pmd.dir}/cache" encoding="UTF-8">
@@ -1175,4 +1177,5 @@
         <ivy:retrieve pattern="${lib.dir}/runtime/[artifact]-[type].[ext]" conf="runtime"/>
         <ivy:retrieve pattern="${lib.dir}/sources/[artifact]-[type].[ext]" conf="sources"/>
+        <ivy:retrieve pattern="${lib.dir}/tools/[artifact]-[type].[ext]" conf="javacc" file="${tools.ivy}"/>
     </target>
 </project>
Index: /trunk/tools/ivy.xml
===================================================================
--- /trunk/tools/ivy.xml	(revision 16167)
+++ /trunk/tools/ivy.xml	(revision 16168)
@@ -4,8 +4,11 @@
     <info organisation="org.openstreetmap" module="josm"/>
     <configurations>
+        <conf name="javacc" description="Everything needed for running JavaCC"/>
         <conf name="pmd" description="Everything needed for running PMD"/>
         <conf name="spotbugs" description="Everything needed for running SpotBugs"/>
     </configurations>
     <dependencies>
+        <!-- javacc->default -->
+        <dependency org="net.java.dev.javacc" name="javacc" rev="7.0.3" conf="javacc->default"/>
         <!-- pmd->default -->
         <dependency org="net.sourceforge.pmd" name="pmd-core" rev="6.20.0" conf="pmd->default"/>
