diff --git a/build.xml b/build.xml
index f49d045..5a53b42 100644
--- a/build.xml
+++ b/build.xml
@@ -107,7 +107,10 @@ Build-Date: ${build.tstamp}
             <zipfileset dir="macosx" includes="JOSM.app/Contents/MacOS/JOSM" filemode="755"/>
         </zip>
     </target>
-    <target name="javacc">
+    <uptodate property="javacc.notRequired" targetfile="${mapcss.dir}/parsergen/MapCSSParser.java" >
+        <srcfiles dir="${mapcss.dir}" includes="MapCSSParser.jj"/>
+    </uptodate>
+    <target name="javacc" unless="javacc.notRequired">
         <mkdir dir="${mapcss.dir}/parsergen"/>
         <exec append="false" executable="java" failifexecutionfails="true">
             <arg value="-cp"/>
@@ -328,5 +331,10 @@ Build-Date: ${build.tstamp}
         <class location="${basedir}/dist/josm-custom.jar" />
       </findbugs>
     </target>
+    <target name="run" depends="dist">
+        <java jar="dist/josm-custom.jar" fork="true">
+            <jvmarg value="-Djosm.home=/tmp/.josm/"/>
+        </java>
+    </target>
 
 </project>
