我正在尝试复制示例在这一页。我下载了数据并运行了以下代码(该页面的示例数据可以下载从这里开始):
osmosis --rbf sample_osmosis.osm.pbf --nkv keyValueList="amenity.school" --wx schools.osm
我使用LinuxMint20.2肉桂,并使用Sypantic安装渗透(0.47版)。
我下载了上一页中的示例,并在包含.pbf文件的文件夹中运行了前面的代码。
但是,我得到了这个错误:
osmosis --rbf sample_osmosis.osm.pbf --nkv keyValueList="amenity.school" --wx schools.osm
nov. 18, 2021 11:55:56 P. M. org.openstreetmap.osmosis.core.Osmosis run
INFORMACIÓN: Osmosis Version 0.47
nov. 18, 2021 11:55:56 P. M. org.openstreetmap.osmosis.core.Osmosis run
INFORMACIÓN: Preparing pipeline.
nov. 18, 2021 11:55:56 P. M. org.openstreetmap.osmosis.core.Osmosis run
INFORMACIÓN: Launching pipeline execution.
nov. 18, 2021 11:55:56 P. M. org.openstreetmap.osmosis.core.Osmosis run
INFORMACIÓN: Pipeline executing, waiting for completion.
nov. 18, 2021 11:55:56 P. M. org.openstreetmap.osmosis.core.pipeline.common.ActiveTaskManager waitForCompletion
GRAVE: Thread for task 1-rbf failed
java.lang.NoClassDefFoundError: com/google/common/util/concurrent/MoreExecutors
at org.openstreetmap.osmosis.pbf2.v0_6.PbfReader.run(PbfReader.java:87)
at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.lang.ClassNotFoundException: com.google.common.util.concurrent.MoreExecutors
at org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
at org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:271)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:247)
at org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:239)
... 2 more
nov. 18, 2021 11:55:56 P. M. org.openstreetmap.osmosis.core.Osmosis main
GRAVE: Execution aborted.
org.openstreetmap.osmosis.core.OsmosisRuntimeException: One or more tasks failed.
at org.openstreetmap.osmosis.core.pipeline.common.Pipeline.waitForCompletion(Pipeline.java:146)
at org.openstreetmap.osmosis.core.Osmosis.run(Osmosis.java:92)
at org.openstreetmap.osmosis.core.Osmosis.main(Osmosis.java:37)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchStandard(Launcher.java:321)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:234)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347)
at org.codehaus.classworlds.Launcher.main(Launcher.java:47)知道会发生什么吗?
发布于 2022-07-20 11:18:00
我使用示例数据(osmosis --rbf sample_osmosis.osm.pbf --nkv keyValueList="amenity.school" --wx school.osm):INFOS: Total execution time: 439 milliseconds成功地运行了0.48.3版本的OsmologyVersion0.48.3的精确命令。
我的渗透版本可能与您的版本不同,但是sample_osmosis.osm.pbf文件可能也在进化。
FYI在2022-07-20上遇到了相同的错误消息("GRAVE: Thread for task 1-rbf failed"),它使用来自https://download.geofabrik.de/europe/monaco-220719.osm.pbf的最新GeoFabrik OSM数据,并使用一个基本的渗透命令:osmosis --read-pbf file=monaco-latest.osm.pbf --write-xml file=monaco-latest.osm。在与GeoFabrik支持进行分析和交换之后,它与第二天修复的bug有关。
等待格式修正后,一个很好的解决方法是使用osmconvert:osmconvert" monaco-latest.osm.pbf>monaco-new.osm.pbf --out-pbf“清除”pbf。
https://stackoverflow.com/questions/70027791
复制相似问题