首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >渗透不适用于mapfilewriter插件

渗透不适用于mapfilewriter插件
EN

Stack Overflow用户
提问于 2013-03-19 20:03:13
回答 2查看 4.3K关注 0票数 7

我最近下载了Osmosis来将.osm.pbf文件转换为.map文件。我在这个应用程序中使用的是Windows 7。我已经从他们的系统下载了最新的zip file,并将mapfilewriter jar文件放到/lib/default/文件夹中。但是,当我在.bat文件中运行以下语句时,我一直收到此错误:

代码语言:javascript
复制
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)

我已经读过了,似乎这是由于渗透作用本身造成的,我必须使用较低版本的渗透作用。我曾尝试使用Osmosis版本0.40,但在运行.bat文件时出现以下错误:

代码语言:javascript
复制
Error: Could not find or load main class org.codehaus.classworlds.Launcher

我到底哪里出错了?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-19 22:15:04

经过多次试验和错误,我最终通过下载Osmosis版本0.40.1 here使其正常工作。

此外,我还在/lib/default文件夹中添加了4个jar文件:

  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

之后,我创建了一个名为"osmosis-plugins.conf“的新conf文件,并在其中添加了一行”org.mapsforge.map.writer.osmosis.MapFileWriterPluginLoader“”。

完成这些步骤后,Osmosis终于可以工作了(尽管我不确定这是否是最正确的方法)。

然而,我仍然不能真正理解为什么最新版本的Osmosis不能工作。

希望这能帮助那些和我有类似问题的人!

票数 11
EN

Stack Overflow用户

发布于 2020-01-16 10:25:44

我也遇到了这个问题,下面是我的解决方案:

https://search.maven.org/search?q=mapsforge-map

  • Put
  1. 下载mapsforge-map-writer jar文件(有依赖项的那个)下载的jar文件到我的osmosis/lib/default目录
  2. 打开我的渗透所在的cmd,cd并运行--mapfile-writer命令。

希望这能有所帮助!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15498994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档