Hi Ticker,
Am 2026-07-07 13:10, schrieb Ticker Berkin via mkgmap-dev:
Hi Thorsten
I've got this running with latest/trunk mkgmap, up-to-date java system,
geotools-35.0 and land-polygons-complete-4326. I let it runs for 16
hours on my
16G machine and it went from 131072 to 122940 tiles remaining,
generating 386
files in sea-latest. I had to kill it as my machine became unusable for
other
work!
This sounds like most of or all of your java worker threads died (heap
overflow?).
If this happens, then you will either see a heap overflow error
somewhere in the output or a java core file in your working directory.
If this happens, your java process will not die but continue to run.
Did you check the output for errors?
Thorsten
Assuming cd to recent mkgmap tree (say svn/trunk)
From http://sourceforge.net/projects/geotools/files download & unzip
geotools-
35.0-bin.zip (assume into ..)
In lib/optional, delete or move aside:
commons-pool-1.5.4.jar
gt-api-2.7.5.jar
gt-cql-2.7.5.jar
gt-data-2.7.5.jar
gt-main-2.7.5.jar
gt-metadata-2.7.5.jar
gt-opengis-2.7.5.jar
gt-referencing-2.7.5.jar
gt-shapefile-2.7.5.jar
jsr-275-1.0-beta-2.jar
jts-1.11.jar
vecmath-1.3.2.jar
I was hoping to simply copy the following from geotools-35.0/lib into
lib/optional:
commons-pool-1.5.4.jar (a more recent build)
gt-api-35.0.jar
gt-cql-35.0.jar
gt-main-35.0.jar
gt-metadata-35.0.jar
gt-referencing-35.0.jar
gt-shapefile-35.0.jar
jsr305-3.0.2.jar
jts-core-1.20.0.jar
However gt-shapefile dynamically loads some other module(s) on
invocation and I
can't work out which out of the 250ish in geotools. Having a symbolic
link
allows it to work, so it seems simpler to have all as such:
cd lib/optional
ln -s ../../../../geotools-35.0/lib/commons-pool-1.5.4.jar
commons-pool.jar
ln -s ../../../../geotools-35.0/lib/gt-api-35.0.jar gt-api.jar
ln -s ../../../../geotools-35.0/lib/gt-cql-35.0.jar gt-cql.jar
ln -s ../../../../geotools-35.0/lib/gt-main-35.0.jar gt-main.jar
ln -s ../../../../geotools-35.0/lib/gt-metadata-35.0.jar
gt-metadata.jar
ln -s ../../../../geotools-35.0/lib/gt-referencing-35.0.jar
gt-referencing.jar
ln -s ../../../../geotools-35.0/lib/gt-shapefile-35.0.jar
gt-shapefile.jar
ln -s ../../../../geotools-35.0/lib/jsr305-3.0.2.jar jsr.jar
ln -s ../../../../geotools-35.0/lib/jts-core-1.20.0.jar jts.jar
Note: only gt-api, gt-cql, gt-main, gt-referencing & jts-core are
needed for
compile, however gt-metadata & gt-shapefile and some .jar files in the
same
directory as gt-shapefile are needed for running.
I've also included commons-pool and jsr - no sure if they make any
difference.
cd ../..
Move the attached PrecompSeaGenerator.java into
src/uk/me/parabola/mkgmap/sea/optional/
ant clean
ant build (force to including optional components)
cd to your sea build dir, run something like following, adjusting
paths/memory
required:
<<<
#! /bin/sh
set -x
mkgmap=../mkgmap/mkgmap.jar
libOptional=../svn/trunk/lib/optional
shapeDir=land-polygons-complete-4326
outDir=sea-latest
javaOpts="-Xmx15G -ea"
java ${javaOpts} -cp \
${mkgmap}:\
${libOptional}/splitter-412.jar:\
${libOptional}/commons-pool.jar:\
${libOptional}/gt-api.jar:\
${libOptional}/gt-cql.jar:\
${libOptional}/gt-main.jar:\
${libOptional}/gt-metadata.jar:\
${libOptional}/gt-referencing.jar:\
${libOptional}/gt-shapefile.jar:\
${libOptional}/jsr.jar:\
${libOptional}/jts.jar\
uk.me.parabola.mkgmap.sea.optional.PrecompSeaGenerator\
${shapeDir}/land_polygons.shp\
WGS84\
${outDir}
exit
I'd like to get rid of using old splitter-412.jar but the methods
needed have
moved elsewhere or gone and something else in "optional" uses other
moved
methods
Good luck
Ticker
_______________________________________________
mkgmap-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
%(web_page_url)slistinfo/%(_internal_name)s
_______________________________________________
mkgmap-dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
%(web_page_url)slistinfo/%(_internal_name)s