
I'm having problems compiling Mkgmap, maybe someone here is able to help with that: Before compiling I removed all java stuff, then installed sun-java6-jdk on my ubuntu installation. Then downloaded Mkgmap from SVN, ran 'ant dist' as per Mkgmap wiki page and got the following error:
ant dist Buildfile: build.xml
prepare: compile: [javac] Compiling 317 source files to /home/lambertus/garmin/test/mkgmap/build/classes [javac] failed to read ecj.jar (reconfigure with --with-ecj-jar): /usr/share/java/eclipse-ecj.jar [javac] failed to load org.eclipse.jdt.internal.compiler.batch.Main from ecj.jar: /usr/share/java/eclipse-ecj.jar [javac] java.lang.ClassNotFoundException: org.eclipse.jdt.internal.compiler.batch.Main not found in java.net.URLClassLoader{urls=[file:/usr/share/java/eclipse-ecj.jar], parent=gnu.gcj.runtime.SystemClassLoader{urls=[file:/usr/share/ant/lib/ant-launcher.jar,file:/usr/share/java/xmlParserAPIs.jar,file:/usr/share/java/xercesImpl.jar], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}} [javac] at java.net.URLClassLoader.findClass(libgcj.so.10) [javac] at java.lang.ClassLoader.loadClass(libgcj.so.10) [javac] at java.lang.ClassLoader.loadClass(libgcj.so.10) [javac] at com.sun.tools.javac.Main.<clinit>(Main.java:91) [javac] at java.lang.Class.initializeClass(libgcj.so.10) [javac] at java.lang.Class.forName(libgcj.so.10) [javac] at org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.doesModernCompilerExist(CompilerAdapterFactory.java:145) [javac] at org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.getCompiler(CompilerAdapterFactory.java:100) [javac] at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:1058) [javac] at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:882) [javac] at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) [javac] at java.lang.reflect.Method.invoke(libgcj.so.10) [javac] at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) [javac] at org.apache.tools.ant.Task.perform(Task.java:348) [javac] at org.apache.tools.ant.Target.execute(Target.java:357) [javac] at org.apache.tools.ant.Target.performTasks(Target.java:385) [javac] at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) [javac] at org.apache.tools.ant.Project.executeTarget(Project.java:1306) [javac] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) [javac] at org.apache.tools.ant.Project.executeTargets(Project.java:1189) [javac] at org.apache.tools.ant.Main.runBuild(Main.java:758) [javac] at org.apache.tools.ant.Main.startAnt(Main.java:217) [javac] at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257) [javac] at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104) BUILD FAILED java.lang.ExceptionInInitializerError at java.lang.Class.initializeClass(libgcj.so.10) at java.lang.Class.forName(libgcj.so.10) at org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.doesModernCompilerExist(CompilerAdapterFactory.java:145) at org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.getCompiler(CompilerAdapterFactory.java:100) at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:1058) at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:882) at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) at java.lang.reflect.Method.invoke(libgcj.so.10) at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106) at org.apache.tools.ant.Task.perform(Task.java:348) at org.apache.tools.ant.Target.execute(Target.java:357) at org.apache.tools.ant.Target.performTasks(Target.java:385) at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337) at org.apache.tools.ant.Project.executeTarget(Project.java:1306) at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) at org.apache.tools.ant.Project.executeTargets(Project.java:1189) at org.apache.tools.ant.Main.runBuild(Main.java:758) at org.apache.tools.ant.Main.startAnt(Main.java:217) at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257) at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104) Caused by: java.lang.NullPointerException at com.sun.tools.javac.Main.<clinit>(Main.java:106) at java.lang.Class.initializeClass(libgcj.so.10) ...19 more Total time: 1 second That error suggests that Eclipse needed to be installed, so I installed it. Unfortunately compiling after that resulted in the same error again. The file ecj.jar is not referenced in the build.xml, 'ant clean dist' resulted in the same error. The compiler used is: javac 1.6.0_15 Any ideas?

Hi Lambertus, On Tue, Dec 01, 2009 at 10:23:33PM +0100, Lambertus wrote:
I'm having problems compiling Mkgmap, maybe someone here is able to help with that:
Before compiling I removed all java stuff, then installed sun-java6-jdk on my ubuntu installation. Then downloaded Mkgmap from SVN, ran 'ant dist' as per Mkgmap wiki page and got the following error:
ant dist Buildfile: build.xml
prepare:
compile: [javac] Compiling 317 source files to /home/lambertus/garmin/test/mkgmap/build/classes [javac] failed to read ecj.jar (reconfigure with --with-ecj-jar): /usr/share/java/eclipse-ecj.jar [javac] failed to load org.eclipse.jdt.internal.compiler.batch.Main from ecj.jar: /usr/share/java/eclipse-ecj.jar [javac] java.lang.ClassNotFoundException: org.eclipse.jdt.internal.compiler.batch.Main not found in java.net.URLClassLoader{urls=[file:/usr/share/java/eclipse-ecj.jar], parent=gnu.gcj.runtime.SystemClassLoader{urls=[file:/usr/share/ant/lib/ant-launcher.jar,file:/usr/share/java/xmlParserAPIs.jar,file:/usr/share/java/xercesImpl.jar], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}} [javac] at java.net.URLClassLoader.findClass(libgcj.so.10) [javac] at java.lang.ClassLoader.loadClass(libgcj.so.10) [javac] at java.lang.ClassLoader.loadClass(libgcj.so.10) [javac] at com.sun.tools.javac.Main.<clinit>(Main.java:91) [snip]
Can you invoke javac from the command line? I do not have any Eclipse stuff installed on my Debian Lenny system. I am using the sun-java6-jdk package (Version 6-12-1, http://packages.debian.org/lenny/sun-java6-jdk). Marko

Marko Mäkelä wrote:
Can you invoke javac from the command line? I do not have any Eclipse stuff installed on my Debian Lenny system. I am using the sun-java6-jdk package (Version 6-12-1, http://packages.debian.org/lenny/sun-java6-jdk).
Yes, javac runs fine from the commandline. Can you clarify? I don't understand what you want me to do... If it is the version number you're looking for, then that's given in my first mail.

Valentijn Sessink schreef:
sudo update-alternatives --config java
... and you might want to check dpkg --status sun-java6-jdk|grep Version ... too: 6-17-0ubuntu1.8.04 is what should be your current version on hardy; as there is a java problem when you have only the package from hardy. You need hardy-proposed in your package list. (At least that is what I experienced). V.

Valentijn Sessink wrote:
... and you might want to check dpkg --status sun-java6-jdk|grep Version ... too: 6-17-0ubuntu1.8.04 is what should be your current version on hardy; as there is a java problem when you have only the package from hardy. You need hardy-proposed in your package list. (At least that is what I experienced).
dpkg --status sun-java6-jdk|grep Version Version: 6-15-1
My ubuntu version is 9.10 (Karmic Koala)

Valentijn Sessink wrote:
Lambertus schreef:
I'm having problems compiling Mkgmap, maybe someone here is able to help
[...]
What does sudo update-alternatives --config java
tell you?
There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/bin/gij-4.4 1044 auto mode 1 /usr/bin/gij-4.4 1044 manual mode 2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode Press enter to keep the current choice[*], or type selection number: Which one should I choose? Number 2 I suspect?

Lambertus,
* 0 /usr/bin/gij-4.4 1044 auto mode 1 /usr/bin/gij-4.4 1044 manual mode Which one should I choose? Number 2 I suspect?
Yep. Numbers 0 and 1 are the Gnu Java runtime. You probably have the Gnu java compiler as well. You did not completely remove all java before installing sun's java. Please remove gij-4.4 and related: probably gcj-4.4-jdk, gcj, gcj-4.4-jre and/or other gcj-related stuff. And you might as well check update-alternatives --config javac (which should be the Sun version as well). Best regards, Valentijn

Valentijn Sessink wrote:
Lambertus,
* 0 /usr/bin/gij-4.4 1044 auto mode 1 /usr/bin/gij-4.4 1044 manual mode Which one should I choose? Number 2 I suspect?
Yep. Numbers 0 and 1 are the Gnu Java runtime. You probably have the Gnu java compiler as well.
You did not completely remove all java before installing sun's java. Please remove gij-4.4 and related: probably gcj-4.4-jdk, gcj, gcj-4.4-jre and/or other gcj-related stuff. And you might as well check update-alternatives --config javac (which should be the Sun version as well).
Thanks a lot Valentijn, removing libgcj10 and it's dependent packages solved all compiling problems for me.

Ok, I finally got the correct search phrase and a suggestion popped-up suggesting to install ecj. Well, who would have thought of that... =-O So, now the compiling starts but prints a whole lot of warnings and one error then exits. Output is attached. The single error is: [javac] 7. ERROR in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/labelenc/DecodedText.ja [javac] va (at line 42) [javac] text = new String(ba, 0, ba.length, charSet); [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] The constructor String(byte[], int, int, Charset) is undefined Any ideas? ant dist Buildfile: build.xml prepare: compile: [javac] Compiling 317 source files to /home/lambertus/garmin/test/mkgmap/build/classes [javac] ---------- [javac] 1. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/ExitException.java (at line 25) [javac] public class ExitException extends RuntimeException { [javac] ^^^^^^^^^^^^^ [javac] The serializable class ExitException does not declare a static final serialVersionUID field of type long [javac] ---------- [javac] ---------- [javac] 2. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/FileExistsException.java [javac] (at line 26) [javac] public class FileExistsException extends IOException { [javac] ^^^^^^^^^^^^^^^^^^^ [javac] The serializable class FileExistsException does not declare a static final serialVersionUID field of type long [javac] ---------- [javac] ---------- [javac] 3. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/FileNotWritableException.java (at line 25) [javac] public class FileNotWritableException extends IOException { [javac] ^^^^^^^^^^^^^^^^^^^^^^^^ [javac] The serializable class FileNotWritableException does not declare a static final serialVersionUID field of type long [javac] ---------- [javac] ---------- [javac] 4. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/FormatException.java [javac] (at line 24) [javac] public class FormatException extends RuntimeException { [javac] ^^^^^^^^^^^^^^^ [javac] The serializable class FormatException does not declare a static final serialVersionUID field of type long [javac] ---------- [javac] ---------- [javac] 5. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/ReadFailedException.java (at line 22) [javac] public class ReadFailedException extends RuntimeException { [javac] ^^^^^^^^^^^^^^^^^^^ [javac] The serializable class ReadFailedException does not declare a static final serialVersionUID field of type long [javac] ---------- [javac] ---------- [javac] 6. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/Exit.java [javac] (at line 37) [javac] private Label label; [javac] ^^^^^ [javac] The field Exit.label is never read locally [javac] ---------- [javac] ---------- [javac] 7. ERROR in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/labelenc/DecodedText.ja [javac] va (at line 42) [javac] text = new String(ba, 0, ba.length, charSet); [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] The constructor String(byte[], int, int, Charset) is undefined [javac] ---------- [javac] ---------- [javac] 8. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/ExitFacility.java (at line 21) [javac] import uk.me.parabola.imgfmt.app.trergn.Subdivision; [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] The import uk.me.parabola.imgfmt.app.trergn.Subdivision is never used [javac] ---------- [javac] ---------- [javac] 9. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/Highway.java [javac] (at line 33) [javac] class ExitPoint implements Comparable { [javac] ^^^^^^^^^^ [javac] Comparable is a raw type. References to generic type Comparable<T> should be parameterized [javac] ---------- [javac] 10. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/Highway.java (at line 67) [javac] java.util.Collections.sort(exits); [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] Type safety: Unchecked invocation sort(List<Highway.ExitPoint>) of the generic method sort(List<T>) of type Collections [javac] ---------- [javac] ---------- [javac] 11. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/LBLFileReader.ja [javac] va (at line 302) [javac] boolean hasTides = false; [javac] ^^^^^^^^ [javac] The local variable hasTides is never read [javac] ---------- [javac] 12. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/LBLFileReader.ja [javac] va (at line 303) [javac] boolean hasUnkn = false; [javac] ^^^^^^^ [javac] The local variable hasUnkn is never read [javac] ---------- [javac] 13. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/LBLFileReader.java (at line 358) [javac] int n; [javac] ^ [javac] The local variable n is never read [javac] ---------- [javac] 14. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/LBLFileReader.java (at line 384) [javac] int highwayLabelOffset = lblinfo & 0x3FFFF; [javac] ^^^^^^^^^^^^^^^^^^ [javac] The local variable highwayLabelOffset is never read [javac] ---------- [javac] 15. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/LBLFileReader.ja [javac] va (at line 386) [javac] boolean overnightParking = (lblinfo & 0x400000) != 0; [javac] ^^^^^^^^^^^^^^^^ [javac] The local variable overnightParking is never read [javac] ---------- [javac] 16. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/LBLFileReader.java (at line 388) [javac] byte highwayIndex = reader.get(); [javac] ^^^^^^^^^^^^ [javac] The local variable highwayIndex is never read [javac] ---------- [javac] 17. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/LBLFileReader.java (at line 390) [javac] int eidx = (placeHeader.getNumExits() > 255) ? [javac] ^^^^ [javac] The local variable eidx is never read [javac] ---------- [javac] ---------- [javac] 18. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/POIIndex.java (at line 27) [javac] public class POIIndex implements Comparable { [javac] ^^^^^^^^^^ [javac] Comparable is a raw type. References to generic type Comparable<T> should be parameterized [javac] ---------- [javac] ---------- [javac] 19. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/PlacesFile.java [javac] (at line 49) [javac] private final List[] poiIndex = new ArrayList[256]; [javac] ^^^^ [javac] List is a raw type. References to generic type List<E> should be parameterized [javac] ---------- [javac] 20. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/PlacesFile.java (at line 87) [javac] Collections.sort(pil); [javac] ^^^^^^^^^^^^^^^^^^^^^ [javac] Type safety: Unchecked invocation sort(List<POIIndex>) of the generic method sort(List<T>) of type Collections [javac] ---------- [javac] 21. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/lbl/PlacesFile.java [javac] (at line 299) [javac] poiIndex[t].add(pi); [javac] ^^^^^^^^^^^^^^^^^^^ [javac] Type safety: The method add(Object) belongs to the raw type List. References to generic type List<E> should be parameterized [javac] ---------- [javac] ---------- [javac] 22. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/net/RoadDef.java (at line 54) [javac] public class RoadDef implements Comparable { [javac] ^^^^^^^^^^ [javac] Comparable is a raw type. References to generic type Comparable<T> should be parameterized [javac] ---------- [javac] 23. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/net/RoadDef.java [javac] (at line 475) [javac] private static final int TABA_MASK_CLASS = 0x70; [javac] ^^^^^^^^^^^^^^^ [javac] The field RoadDef.TABA_MASK_CLASS is never read locally [javac] ---------- [javac] 24. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/net/RoadDef.java (at line 477) [javac] private static final int TABA_MASK_SPEED = 0x07; [javac] ^^^^^^^^^^^^^^^ [javac] The field RoadDef.TABA_MASK_SPEED is never read locally [javac] ---------- [javac] ---------- [javac] 25. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/net/RouteArc.java [javac] (at line 17) [javac] import uk.me.parabola.imgfmt.Utils; [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] The import uk.me.parabola.imgfmt.Utils is never used [javac] ---------- [javac] 26. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/net/RouteArc.java [javac] (at line 18) [javac] import uk.me.parabola.imgfmt.app.Coord; [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] The import uk.me.parabola.imgfmt.app.Coord is never used [javac] ---------- [javac] ---------- [javac] 27. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/trergn/ExtTypeAttributes.java (at line 25) [javac] import java.util.HashMap; [javac] ^^^^^^^^^^^^^^^^^ [javac] The import java.util.HashMap is never used [javac] ---------- [javac] ---------- [javac] 28. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/trergn/Polyline.java (at line 53) [javac] private int number; [javac] ^^^^^^ [javac] The field Polyline.number is never read locally [javac] ---------- [javac] ---------- [javac] 29. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/sys/FileNode.java (at line 21) [javac] import java.nio.channels.AsynchronousCloseException; [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] The import java.nio.channels.AsynchronousCloseException is never used [javac] ---------- [javac] 30. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/sys/FileNode.java [javac] (at line 22) [javac] import java.nio.channels.ClosedByInterruptException; [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] The import java.nio.channels.ClosedByInterruptException is never used [javac] ---------- [javac] 31. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/sys/FileNode.java (at line 26) [javac] import java.nio.channels.NonWritableChannelException; [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] The import java.nio.channels.NonWritableChannelException is never used [javac] ---------- [javac] ---------- [javac] 32. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/io/EndOfFileException.java [javac] (at line 26) [javac] public class EndOfFileException extends IOException { [javac] ^^^^^^^^^^^^^^^^^^ [javac] The serializable class EndOfFileException does not declare a static final serialVersionUID field of type long [javac] ---------- [javac] ---------- [javac] 33. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/build/MapArea.java (at line 122) [javac] bounds.contains(element.getLocation()) || [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] Dead code [javac] ---------- [javac] 34. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/build/MapArea.java (at line 128) [javac] log.error("Polygon with type 0x" + Integer.toHexString(element.getType()) + " at " + [javac] element.getLocation().toOSMURL() + " is outside of the map area centred on " + bounds.getCenter().toOSMURL() + " width = " + bounds.getWidth() + " height = " + bounds.getHeight() + " resolution = " + [javac] resolution); [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] Dead code [javac] ---------- [javac] 35. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/build/MapArea.java [javac] (at line 161) [javac] bounds.contains(element.getLocation())) { [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] Dead code [javac] ---------- [javac] 36. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/build/MapArea.java [javac] (at line 166) [javac] log.error("Line with type 0x" + Integer.toHexString(element.getType()) + " at " + element.getLocation().toOSMURL() + " is outside of the map area centred on " + bounds.getCenter().toOS [javac] MURL() + " width = " + bounds.getWidth() + " height = " + bounds.getHeight() + " resolution = " + resolution); [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] Dead code [javac] ---------- [javac] ---------- [javac] 37. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/filters/DouglasPeuckerFilter.java (at line 20) [javac] import uk.me.parabola.imgfmt.app.CoordNode; [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] The import uk.me.parabola.imgfmt.app.CoordNode is never used [javac] ---------- [javac] 38. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/filters/DouglasPeuckerFi [javac] lter.java (at line 31) [javac] private static final double ERROR_DISTANCE = 5.4 / 2; //One unit is 5.4 m, so error dist is 2.6m [javac] ^^^^^^^^^^^^^^ [javac] The field DouglasPeuckerFilter.ERROR_DISTANCE is never read locally [javac] ---------- [javac] ---------- [javac] 39. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/filters/SmoothingFilter.java (at line 36) [javac] private static final int MIN_SIZE = 0; [javac] ^^^^^^^^ [javac] The field SmoothingFilter.MIN_SIZE is never read locally [javac] ---------- [javac] ---------- [javac] 40. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/general/RoadNetwork.java [javac] (at line 205) [javac] node = new RouteNode(coord); [javac] ^^^^^^^^^^^^^^^^^^^^ [javac] The constructor RouteNode(Coord) is deprecated [javac] ---------- [javac] ---------- [javac] 41. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/gui/FileModel.java [javac] (at line 30) [javac] class FileModel extends AbstractTableModel { [javac] ^^^^^^^^^ [javac] The serializable class FileModel does not declare a static final serialVersionUID field of type long [javac] ---------- [javac] ---------- [javac] 42. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/gui/Main.java (at line 31) [javac] public class Main extends JFrame { [javac] ^^^^ [javac] The serializable class Main does not declare a static final serialVersionUID field of type long [javac] ---------- [javac] ---------- [javac] 43. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/gui/MainFileList.java [javac] (at line 35) [javac] @SuppressWarnings({"UnusedDeclaration"}) [javac] ^^^^^^^^^^^^^^^^^^^ [javac] Unsupported @SuppressWarnings("UnusedDeclaration") [javac] ---------- [javac] ---------- [javac] 44. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/osmstyle/DirectoryFileLoader.java (at line 22) [javac] import java.io.FileReader; [javac] ^^^^^^^^^^^^^^^^^^ [javac] The import java.io.FileReader is never used [javac] ---------- [javac] ---------- [javac] 45. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/osmstyle/StyleImpl.java (at line 368) [javac] } catch (IOException e) { [javac] ^^^^^^^^^^^ [javac] Unreachable catch block for IOException. Only more specific exceptions are thrown and handled by previous catch block(s). [javac] ---------- [javac] 46. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/osmstyle/StyleImpl.java [javac] (at line 403) [javac] } catch (IOException e) { [javac] ^^^^^^^^^^^ [javac] Unreachable catch block for IOException. Only more specific exceptions are thrown and handled by previous catch block(s). [javac] ---------- [javac] ---------- [javac] 47. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/osmstyle/StyledConverter.java (at line 24) [javac] import java.util.Properties; [javac] ^^^^^^^^^^^^^^^^^^^^ [javac] The import java.util.Properties is never used [javac] ---------- [javac] ---------- [javac] 48. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/osmstyle/eval/NumericOp.java (at line 64) [javac] @SuppressWarnings({"MethodWithMultipleReturnPoints"}) [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] Unsupported @SuppressWarnings("MethodWithMultipleReturnPoints") [javac] ---------- [javac] ---------- [javac] 49. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/osmstyle/eval/SyntaxExce [javac] ption.java (at line 27) [javac] public class SyntaxException extends RuntimeException { [javac] ^^^^^^^^^^^^^^^ [javac] The serializable class SyntaxException does not declare a static final serialVersionUID field of type long [javac] ---------- [javac] ---------- [javac] 50. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 85) [javac] Class demClass; [javac] ^^^^^ [javac] Class is a raw type. References to generic type Class<T> should be parameterized [javac] ---------- [javac] 51. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 97) [javac] java.lang.reflect.Constructor<DEM> constructor = demClass.getConstructor(String.class [javac] , [javac] Double.TYPE, Double.TYPE, [javac] Double.TYPE, Double.TYPE); [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] Type safety: The method getConstructor(Class...) belongs to the raw type Class. References to generic type Class<T> should be parameterized [javac] ---------- [javac] 52. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java [javac] (at line 97) [javac] java.lang.reflect.Constructor<DEM> constructor = demClass.getConstructor(String.class, [javac] Double.TYPE, Double.TYPE, [javac] Double.TYPE, Double.TYPE); [javac] [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] Type safety: The expression of type Constructor needs unchecked conversion to conform to Constructor<DEM> [javac] ---------- [javac] 53. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 459) [javac] double f1 = elevation(x1, y1) - level; [javac] ^^ [javac] The local variable f1 is never read [javac] ---------- [javac] 54. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 541) [javac] throw new RuntimeException(String.format("refine failed: %f %f %f %f %f %f %f %f", x [javac] Min, yMin, xMax, yMax, x0, y0, x1, y1)); [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] Dead code [javac] ---------- [javac] 55. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 562) [javac] double dt, t0, t1; [javac] ^^ [javac] The local variable dt is never read [javac] ---------- [javac] 56. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 562) [javac] double dt, t0, t1; [javac] ^^ [javac] The local variable t0 is never read [javac] ---------- [javac] 57. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 562) [javac] double dt, t0, t1; [javac] ^^ [javac] The local variable t1 is never read [javac] ---------- [javac] 58. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 563) [javac] double f0, f1; [javac] ^^ [javac] The local variable f0 is never read [javac] ---------- [javac] 59. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 563) [javac] double f0, f1; [javac] ^^ [javac] The local variable f1 is never read [javac] ---------- [javac] 60. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 564) [javac] boolean edgeHit = false; [javac] ^^^^^^^ [javac] The local variable edgeHit is never read [javac] ---------- [javac] 61. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 565) [javac] double h[] = new double[4]; [javac] ^ [javac] The local variable h is never read [javac] ---------- [javac] 62. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 567) [javac] int dir; [javac] ^^^ [javac] The local variable dir is never read [javac] ---------- [javac] 63. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 568) [javac] double n2 = Math.sqrt(1.0 / (grad[0] * grad[0] + grad[1] * grad[1])); [javac] ^^ [javac] The local variable n2 is never read [javac] ---------- [javac] 64. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 569) [javac] double dx; [javac] ^^ [javac] The local variable dx is never read [javac] ---------- [javac] 65. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 570) [javac] double dy; [javac] ^^ [javac] The local variable dy is never read [javac] ---------- [javac] 66. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 572) [javac] int count = 0; [javac] ^^^^^ [javac] The local variable count is never read [javac] ---------- [javac] 67. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 627) [javac] private void addMove(int x0, int y0, int x1, int y1, int direction) { [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] [javac] The method addMove(int, int, int, int, int) from the type DEM.Isolines.Isoline is never used locally [javac] ---------- [javac] 68. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java [javac] (at line 676) [javac] this.minX = (int) ((minLon - data.lon) / data.res); [javac] ^^^ [javac] The static field DEM.res should be accessed in a static way [javac] ---------- [javac] 69. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 677) [javac] this.minY = (int) ((minLat - data.lat) / data.res); [javac] ^^^ [javac] The static field DEM.res should be accessed in a static way [javac] ---------- [javac] 70. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java [javac] (at line 678) [javac] this.maxX = (int) ((maxLon - data.lon) / data.res); [javac] ^^^ [javac] The static field DEM.res should be accessed in a static way [javac] ---------- [javac] 71. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/DEM.java (at line 679) [javac] this.maxY = (int) ((maxLat - data.lat) / data.res); [javac] ^^^ [javac] The static field DEM.res should be accessed in a static way [javac] ---------- [javac] ---------- [javac] 72. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/dem/HGTDEM.java [javac] (at line 20) [javac] import java.nio.channels.FileChannel; [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] The import java.nio.channels.FileChannel is never used [javac] ---------- [javac] ---------- [javac] 73. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/osm/xml/Osm5MapDataSource.java (at line 22) [javac] import java.util.Properties; [javac] ^^^^^^^^^^^^^^^^^^^^ [javac] The import java.util.Properties is never used [javac] ---------- [javac] ---------- [javac] 74. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/osm/xml/Osm5XmlHandler.java (at line 58) [javac] import org.xml.sax.ContentHandler; [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] The import org.xml.sax.ContentHandler is never used [javac] ---------- [javac] 75. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/mkgmap/reader/osm/xml/Osm5XmlHa [javac] ndler.java (at line 110) [javac] private final boolean routing; [javac] ^^^^^^^ [javac] The field Osm5XmlHandler.routing is never read locally [javac] ---------- [javac] ---------- [javac] 76. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/util/EnhancedProperties.java (at line 28) [javac] public class EnhancedProperties extends Properties { [javac] ^^^^^^^^^^^^^^^^^^ [javac] The serializable class EnhancedProperties does not declare a static final serialVersionUID field of type long [javac] ---------- [javac] ---------- [javac] 77. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/util/MultiHashMap.java [javac] (at line 10) [javac] public class MultiHashMap<K,V> extends HashMap<K,List<V>> { [javac] ^^^^^^^^^^^^ [javac] The serializable class MultiHashMap does not declare a static final serialVersionUID field of type long [javac] ---------- [javac] ---------- [javac] 78. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/util/Sortable.java (at line 20) [javac] public class Sortable<K extends Comparable, V> implements Comparable<Sortable<K, V>> { [javac] ^^^^^^^^^^ [javac] Comparable is a raw type. References to generic type Comparable<T> should be parameterized [javac] ---------- [javac] 79. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/util/Sortable.java [javac] (at line 38) [javac] int diff = key.compareTo(o.key); [javac] ^^^^^^^^^^^^^^^^^^^^ [javac] Type safety: The method compareTo(Object) belongs to the raw type Comparable. References to generic type Comparable<T> should be parameterized [javac] ---------- [javac] 80. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/util/Sortable.java (at line 39) [javac] if(diff == 0 && value instanceof Comparable) [javac] ^^^^^^^^^^ [javac] Comparable is a raw type. References to generic type Comparable<T> should be parameterized [javac] ---------- [javac] 81. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/util/Sortable.java [javac] (at line 40) [javac] diff = ((Comparable)value).compareTo(o.value); [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [javac] Type safety: The method compareTo(Object) belongs to the raw type Comparable. References to generic [javac] type Comparable<T> should be parameterized [javac] ---------- [javac] 82. WARNING in /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/util/Sortable.java (at line 40) [javac] diff = ((Comparable)value).compareTo(o.value); [javac] ^^^^^^^^^^ [javac] Comparable is a raw type. References to generic type Comparable<T> should be parameterized [javac] ---------- [javac] 82 problems (1 error, 81 warnings) BUILD FAILED /home/lambertus/garmin/test/mkgmap/build.xml:71: Compile failed; see the compiler error output for details. Total time: 6 seconds

At Wed, Dec 02, 2009 at 08:32:22PM +0100, Lambertus wrote:
Ok, I finally got the correct search phrase and a suggestion popped-up suggesting to install ecj. Well, who would have thought of that... =-O
Please note that installing a certain java does not necessarily mean it's "the" java that is started when you run java. You should check with update-alternatives which java and javac is started. Removing all java stuff that is not Sun java will probably help a lot with compiling mkgmap. (Others could work, but I'm not sure which ones :) V.

That particular error is because you are using an old version of Java (v1.5 or lower) to compile the code. You need Java 1.6. So as Valentijn has suggested, you still have another old version of Java lying around on your system somewhere that you should probably get rid of. L> Ok, I finally got the correct search phrase and a suggestion L> popped-up suggesting to install ecj. Well, who would have thought of L> that... =-O L> L> So, now the compiling starts but prints a whole lot of warnings and L> one error then exits. Output is attached. L> L> The single error is: L> L> [javac] 7. ERROR in L> /home/lambertus/garmin/test/mkgmap/src/uk/me/parabola/imgfmt/app/labe L> lenc/DecodedText.ja L> [javac] va (at line 42) L> [javac] text = new String(ba, 0, ba.length, charSet); L> [javac] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ L> [javac] The constructor String(byte[], int, int, Charset) is L> undefined L> Any ideas? L>
participants (5)
-
Chris Miller
-
Lambertus
-
Marko Mäkelä
-
Valentijn Sessink
-
valentyn@blub.net