2013-03-19 4 views
6

Я недавно загрузил Osmosis для преобразования файлов .osm.pbf в файлы .map. Я использую Windows 7 для этого приложения. Я загрузил последние zip file из своей системы и поместил файлы jar файла mapfilewriter в папку/lib/default /. Тем не менее, я продолжаю получать эту ошибку, когда я запускаю это утверждение в .bat файла:Осмоз не работает с плагином mapfilewriter

osmosis --read-pbf file=taiwanlatest.osm.pbf --mapfile-writer file=helloworld.map 

Mar 19, 2013 7:34:49 PM org.openstreetmap.osmosis.core.Osmosis run 
INFO: Osmosis Version 0.42 
Mar 19, 2013 7:34:49 PM org.openstreetmap.osmosis.core.Osmosis run 
INFO: Preparing pipeline. 
Mar 19, 2013 7:34:50 PM org.mapsforge.map.writer.osmosis.MapFileWriterTask <init> 
INFO: mapfile-writer version: mapsforge-map-writer-0.3.0 
Mar 19, 2013 7:34:50 PM org.mapsforge.map.writer.osmosis.MapFileWriterTask <init> 
INFO: mapfile format specification version: 3 
Mar 19, 2013 7:34:50 PM org.openstreetmap.osmosis.core.Osmosis run 
INFO: Launching pipeline execution. 
Mar 19, 2013 7:34:50 PM org.openstreetmap.osmosis.core.Osmosis run 
INFO: Pipeline executing, waiting for completion. 
Mar 19, 2013 7:34:50 PM org.openstreetmap.osmosis.core.pipeline.common.ActiveTaskManager waitForCompletion 
SEVERE: Thread for task 1-read-pbf failed 
java.lang.AbstractMethodError: org.mapsforge.map.writer.osmosis.MapFileWriterTas 
k.initialize(Ljava/util/Map;)V 
     at crosby.binary.osmosis.OsmosisReader.run(OsmosisReader.java:43) 
     at java.lang.Thread.run(Thread.java:722) 

Mar 19, 2013 7:34:50 PM org.openstreetmap.osmosis.core.Osmosis main 
SEVERE: Execution aborted. 
org.openstreetmap.osmosis.core.OsmosisRuntimeException: One or more tasks failed 
. 
     at org.openstreetmap.osmosis.core.pipeline.common.Pipeline.waitForComple 
tion(Pipeline.java:146) 
     at org.openstreetmap.osmosis.core.Osmosis.run(Osmosis.java:92) 
     at org.openstreetmap.osmosis.core.Osmosis.main(Osmosis.java:37) 
     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. 
java:57) 
     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces 
sorImpl.java:43) 
     at java.lang.reflect.Method.invoke(Method.java:601) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Laun 
cher.java:329) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.jav 
a:239) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(La 
uncher.java:409) 
     at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java: 
352) 
     at org.codehaus.classworlds.Launcher.main(Launcher.java:47) 

Я прочитал, и кажется, что это происходит из-за сам осмос, и что я должен использовать более низким версия осмоса. Я пытался использовать осмос версии 0.40, и я получил эту ошибку, когда я запускаю файл .bat:

Error: Could not find or load main class org.codehaus.classworlds.Launcher 

Где именно я ошибся?

ответ

9

После долгих проб и ошибок, я, наконец, сделал это, загрузив версию Osmosis 0.40.1 here.

Кроме того, я добавил 4 фляги файлы в папке/Библиотека/по умолчанию:

  1. mapsforge-map-writer-0.3.0-jar-with-dependencies.jar
  2. mapsforge-map-0.3.0-jar-with-dependencies.jar
  3. trove-3.0.3.zip
  4. jts-1.8.jar

После чего, Я создал новый файл conf с именем «osmosis-plugins.conf» и добавил li ne "org.mapsforge.map.writer.osmosis.MapFileWriterPluginLoader" в нем.

После выполнения этих действий, Осмос, наконец, работает (хотя я не уверен, что это самый правильный способ сделать это).

Однако я до сих пор не понимаю, почему последняя версия Osmosis не работает.

Надеюсь, это поможет тем, кто столкнулся с подобной проблемой, как я!

+1

Спасибо! Кроме того, • убедитесь, что вы получили версию 0.40.1 (легко пропустить и получить 0,41 вместо); • Мне показалось, что первые две банки были достаточно для меня; • файл conf должен находиться в подпапке config; • используйте '--used-node idTrackerType = Dynamic' и/или' type = hd' и/или 'JAVACMD_OPTIONS = -Xmx1536M', если [память] (http://wiki.openstreetmap.org/wiki/Osmosis/Tuning# Память) является проблемой ... – mousio

Смежные вопросы